Ironclad Developments Inc.


.bmc18-nav–item {
display: block;
font-family: sans-serif;
line-height: 1em;
.bmc18-nav {
margin-bottom: 1em;
.bmc18-banner–main {
display: block;
width: 100%;
border-bottom: solid 0.25em #fff;
.bmc18-nav–item {
text-align: center;
padding: 0.5em;
font-weight: bold;
text-decoration: none;
background-color: #ec3b9a;
color: #fff;
border-bottom: solid 0.25em #fff;
transition-property: background-color;
transition-duration: 0.2s;
.bmc18-nav–item:hover {
background-color: #39b54a;
color: #fff;
@media screen and (min-width: 480px) {
.bmc18-nav {
display: table;
width: 100%;
table-layout: fixed;
.bmc18-banner–main {
/*border-bottom: solid 0.5em #fff;*/
.bmc18-nav–row {
display: table-row;
.bmc18-nav–item {
display: table-cell;
vertical-align: middle;
border: solid 0.5em #fff;
.bmc18-nav–row > .bmc18-nav–item:first-child {
border-left: 0;
.bmc18-nav–row > .bmc18-nav–item:last-child {
border-right: 0;

It is a rare treat to hear a male CEO mention work-life balance. “Honestly, I didn’t even know the term when I started wanting it,” says Ryan Van Damme, CEO of Ironclad Developments Inc., in Winnipeg. But then he fell in love and married a woman with three kids. “I’d just stepped into a ready-made family and I didn’t want to miss it.” Before Ironclad, he was a self-proclaimed workaholic, clocking long hours in the construction industry as a general contractor. Also, on the side, Van Damme, his father and his brother had been flipping houses—13 of them in five years.

Real estate in Manitoba was stable, but Van Damme’s new home life opened his eyes to changing demographics and different housing needs and preferences. “As opposed to single-family houses scattered all around the city, I saw the future as multi-family, purpose-built and higher-density homes,” he says. And so, at just 32, Van Damme founded Ironclad Development Inc. and started “small” with a 47-unit building: “Millennium Meadows” in Cold Lake, Alta. The idea was that the development would cater deliberately and specifically to the lifestyles of apartment-dwellers of the future.

For inspiration, Van Damme didn’t have to look far: a whole cohort of them already lived at his house. “My kids are Gen Z, and they certainly think a lot differently than I do. I try to understand their thought processes and incorporate them,” he says. They’d rather rent than own, firstly, and they’ll happily trade private square footage for massive community spaces. They expect WiFi and utilities to be included. They care deeply about sustainable materials and environmental responsibility. And they simply lack the time to manage big homes. “People are much busier now, and they want fewer responsibilities at home,” says Van Damme.

In just six years, Ironclad Developments has been involved in all levels of construction—land acquisitions, design, engineering, property management—on nearly 20 forward-thinking, multi-family properties. Some are complete and others are currently in the works. To convey exactly where in the process an apartment might be, Ironclad posts high-res aerial shots and time-lapse videos. Completed units are showcased online via the latest 3D interactive models to allow would-be residents to look, explore, and even measure to see if their furniture will fit. “We’re always trying to [use technology to] be trendsetters and make apartment shopping as easy as possible.”

Ironclad-built properties now stretch from Victoria to Ottawa. A recently completed project is The Onyx, a much-anticipated redevelopment of Winnipeg’s former Norlander Inn; it’s now a 285-unit luxury apartment attracting students, young families and empty-nesters. Residents enjoy a theatre, games room, rooftop barbecue, saunas and steam rooms, a car wash and, yes, a pet wash.

And with amenities like that on offer in its developments, you just know Ironclad’s offices must also deliver the goods. Since a staff of more than 90 is currently outgrowing the company’s four Winnipeg offices (it also has offices in Victoria, Kelowna and Ottawa), Van Damme isn’t just musing about work-life balance, but actually fostering it via new upcoming headquarters. Staff like Lauren Clemens, Ironclad’s general counsel and director of corporate affairs, are psyched for a commercial kitchen, gym and steam room, coffee shop, rooftop bar, massage parlour, nail salon and—a working parent’s dream come true—an all-ages daycare.

“I’d have been relieved of years of stress had I been in an environment like this when I was having my babies,” says Clemens. Lots of companies spout buzzwords like “respect” and “integrity,” she notes, but “Ironclad’s not just stating values, they’re actually putting action to them. Ryan is actively creating a work environment that supports our work and our personal lives.” For Van Damme, it’s simple: “With daycare, a lot of employees are running around the city, travelling 45 minutes one-way to drop their kid off. That’s time they could be working!” He’s kidding, of course. Really, he’s building the workplace he needed six years ago.

a.bmc18-actionlink {
display: block;
text-align: center;
padding: .8em;
font-size: 1.2em;
font-family: sans-serif;
color: #fff;
background-color: #EC3B9A;
font-weight: 700;
text-decoration: none;
border-radius: 4px;
transition-property: background-color;
transition-duration: .2s

a.bmc18-actionlink:hover {
background-color: #39b54a

Even more of Canada’s Best Managed Companies »

// API calls for recent posts to the ‘best-managed-companies’ tag. Grabs five of the given posts at random. NOTE: Post IDs are hard-coded below in `eligiblePosts`
‘use strict’;
var bodyClass = document.getElementsByTagName(‘body’)[0].getAttribute(‘class’);
var container = document.querySelector(‘#dynamicPosts’);
// tag id for ‘best-managed-companies’
// var tagID = 351657;
var postCount = 5;
var exclude = parseInt(( bodyClass.indexOf(‘postid’) >= 0 ? isolateID(bodyClass)[1] : 0));
var eligiblePosts = [1079843,1079845,1079849,1079851,1079853,1079855,1079857,1079859,1079861,1079863,1079865,1079867,1079869,1079873,1079875,1079877,1079879,1079881,1079885,1079887,1079889,1079891,1079893,1079895,1079897,1079899,1079901,1079903,1079905,1079907,1079909,1079911,1079913,1079915,1079917,1079919,1079921,1079925,1079923,1079927,1079929,1079931,1079933,1079935];
var chosenPosts = arrayRandomSubset(eligiblePosts, postCount, exclude); // subset of eligiblePosts, see function below
var endpoint = ‘’;
endpoint += ‘include=’ + chosenPosts.join(‘,’);
endpoint += ‘&_embed’;

fetch ( endpoint )
return response.json();
.then( function(data){
.catch(function( err ){

function postsRender(data){

// Define Post Elements
// post container
var thePost = document.createElement(‘div’);
// visual holder
var theVisual = document.createElement(‘div’);
// visual link
var theImgLink = document.createElement(‘a’);
// text holder
var theText = document.createElement(‘div’);
// the image
var theImage = document.createElement(‘img’);
theImage.setAttribute(‘src’, post._embedded[‘wp:featuredmedia’][0].source_url);
theImage.setAttribute(‘alt’, post._embedded[‘wp:featuredmedia’][0].alt_text);
// the headline
var theHed = document.createElement(‘h1’);
theHed.innerHTML = ‘‘ + post.title.rendered + ‘‘;
// the dek
var theDek = document.createElement(‘div’);
theDek.innerHTML = post.excerpt.rendered;
// the spacer
var theDivider = document.createElement(‘hr’);
//tack it all together

// return the wordpress postID from the body class
function isolateID( string ){
var pattern = /postid-(d+)?/;
return string.match(pattern);

* From a given array, provide a subset
* @param arr — the array from which to read the values
* @param n — the number of results required
* @param excl — a value to exclude from the results

function arrayRandomSubset(arr, n, excl){
let out = [];
// for the specified count, loop over the given array, select values randomly, and add them to the output array, but only if they aren’t already included.
// NOTE: we temporarily increase the length of the loop to output an array of length n + 1. This is so that if there is an `excl` value provided
for ( var i = 0; i < n + 1; i++ ){
// select a random position in the array
let r = parseInt( Math.random() * arr.length );
// if the value at position `r` isn’t already in the output, add it
if ( out.indexOf(arr[r]) < 0 ) {
// if the value IS already in the output, decrement the loop to try again.
} else {
// if the excluded value is not in the output, just trim to `n` results
if ( out.indexOf(excl) < 0 ) {
return out.splice(0, n);
// if it IS in the output, remove it.
} else {
let e = out.splice(out.indexOf(excl), 1);
return out;

The post Ironclad Developments Inc. appeared first on Canadian Business – Your Source For Business News.


Please enter your comment!
Please enter your name here