mform Construction Group


.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;

mform recently completed work on the 70,000-sq.-foot Scotiabank Digital Factory (Courtesy of mform Construction Group)

Most new businesses start small, but for three former colleagues from one of Canada’s largest commercial interior construction companies, the opening of their new company was particularly minimalist. “Old photos show us in a big, empty room with a piece of paper taped on the wall,” says Jason Shapiro, partner and director of business development.

Together with business partners Angelo Zita and David Allen, Shapiro says the trio grew mform Construction Group in the off-hours. “For almost a year before we launched, we worked on the side—every night, every weekend—planning how we’d come to market,” he recalls. The mission? Injecting fresh ideas and an improved approach into a stagnant industry.

When the company launched in 2013, the timing couldn’t have been better. With a huge boom looming in Toronto, new towers were being built, rent and real estate prices were rising, and a surging tech culture of cool start-ups demanded equally cool office spaces. Enter mform. “If you own a company and need a workspace, you’re going to purchase it from a developer or rent from a landlord, and then you’re gonna hire us to build [out the interior] for you.” Technically, mform is building office spaces, but its purpose statement promises more: “We build culture.”

In 2020, talk of “good work culture” has moved from HR offices into the mainstream, encompassing everything from edgy open spaces in tech companies to just about everywhere else. “Facebook and law firms now want the same thing,” says Shapiro. “People know that in order to attract and retain young talent, you need a cool and progressive office that people want to be in.” There is no more difficult city in North America to find turnkey spaces than Toronto; according to commercial realtor CBRE, the city’s office vacancy rate hit an all-time low of 2% in the fourth quarter of 2019. “This means that if you’re a law firm looking for a new office downtown, you probably won’t find it,” says Shapiro. “Instead, you’ll renovate your existing space.”

For each project, mform pulls together a team that spends an extensive amount of time learning about the client company and understanding its particular wants and needs. “Typically we are being hired early in the process because we are very, very good at what we do in the pre-construction phase,” Shapiro says. “We made a name for ourselves to help our project stakeholders define the construction aspects of a commercial build-out.”

Plans include a personalized variety of open, closed and collaborative spaces, cafeterias and wellness amenities—all digitally mocked up with laser scanning and virtual reality. The team considers cost, time estimates, health and safety, and the convenience of anyone they’ll have to work around, and then they hand-pick the right contractor. Each job is uniquely challenging. “Sometimes we’re working in a brand-new building with nothing but drywall and concrete. Other times we’re brought into an old building and renovating it to make it work,” Shapiro says.

Recent projects include a floor-by-floor renovation of 50 Bay Street in Toronto, home to the Toronto Maple Leafs’ and Toronto Raptors’ offices, as well as the Scotiabank Digital Factory on King Street East. The company built the industrial-style House of Cool animation studios on Queens Quay, with exposed pipes and dangling lighting.

And when Facebook came to town, of course it called mform to build offices that live up to the hype. Facebook’s new digs have 20,000 sq. feet of funky space, a kitchen that doubles as an event venue, and 15-foot floor-to-ceiling windows with panoramic views of the city’s skyline—and ever-more skyscrapers just waiting for the mform touch.

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 mform Construction Group appeared first on Canadian Business – Your Source For Business News.


Please enter your comment!
Please enter your name here