Pointing at paper is important

Work With Angus

Let’s build something great, together

Engineering Manager, Director of Engineering, Software Development Manager – it’s called different things depending on the nature of the organization. But the core purpose is the same: help great software teams make great things.

That is what I do and that is what I love to do.

In the past I’ve led great teams, I’ve trained managers to lead their own teams, I’ve started (and sold) companies, and I’ve coded systems in many programming languages. I’ve also explored design, writing, SEO, and data analysis. Because bringing software to life is about more than just the code.

Though I’ve done many things, my motivation always comes from the same place — crafting a well-running team and creating an environment in which people can do their best work.

“Angus understands that a successful team needs both growing individuals and a cohesion between those individuals. His one-to-one meetings were always fruitful and he was an excellent coach towards methods of improvement, both in terms of my existing skillsets and areas where he saw my untapped potential.”

Andrew Austin, Head of Product at Crew

My Management Philosophy

A good manager can make or break job satisfaction. As Google’s Project Oxygen found, one very important aspect is empathy. You have to care as much about those you wish to manage as you do for the company goals. Find the perfect balance, and both will work in harmony.

In other words, help each team member with their personal mission and they will help you with the company’s mission.

A manager can also be too empathetic. You need to lay down clear expectations for the good of the company and the team member, be they KPIs, OKRs, or just a list of goals. You also have to do the hard things when those expectations aren’t met. Even harder, you have to do those hard things in a humane, respectful way.

Keeping under-performers is harmful. Setting people up for failure and not being able to coach them is just as dangerous. As is taking things too seriously.

You must plan for what your team is actually capable of. You have to be realistic about timelines and you have to be willing to teach a team member to do what they can’t do. Or if you can’t do it either, find someone with the knowledge to lead the training efforts.

Being a manager is knowing you aren’t the most knowledgable person in the room. It’s a difficult skill, more akin to an art.

It’s a skill I got a lot of practise in during the last five years as the technology lead at Crew / Unsplash.

“Working with Angus was one of the best experiences I’ve had in my life. The level of thoughtfulness and perspective Angus brings to company-building is something special and rare.”

Mikael Cho, CEO of Crew / Unsplash

Build The Team, Build The Company

Our software team at Crew was top-notch. Being open to remote employees, and known for our unique culture, we received hundreds of applications each week and were able to pick the best from around the world.

The team started as just two people — me and a designer. We worked together to build out our MVPs and do our initial market validation, completely rebuilding the app several times.

As we scaled the software team to a peak of 15, I led the software recruitment and owned the hiring processes for the company.

Every member of each team had goals and metrics and had a plan for their future. We laid out how they could improve and how they could help others. Our frequent one-on-ones required more effort than your standard performance review, but we got a rapidly improving team in return.

This approach works a lot better if the manager is able to dive in and work alongside the team.

“Unafraid to get his own hands dirty in development and in the fine details of a project, Angus always ensured that as a team we would deliver on time and together.”

Hugh Downer, Software Developer at Crew

“Don’t ask your actors to do anything you wouldn’t do.”

I’ve taken software projects from concept to launch on my own many times. I’ve worked on every part of the stack from database design to UI design on all sizes and scales of systems. I’m confident I can jump into any codebase and hold my own next to the specialists.

A team of engineers needs to be led by someone they believe understands their work.

I’ve programmed in many languages. Mainly in PHP and Java on the back-end, though I’ve worked on a number of C# apps and Python scripts. On the front-end, I’ve used vanilla CSS and Javascript for my entire career, and have kept up with SASS and LESS and a few too many frameworks with names ending in .js

I’m always thinking about the user experience.

I’ve managed servers (Linux and Windows) and set up deployment pipelines. I’ve done data transformation and analysis, piping it into dashboards and reports.

And I’ve obsessed about the performance of the company just as much as I have the speed of a server.

A good manager looks at every part of an organization and tries to bring it all together. It’s about perspective, and understanding every point of view. Only then can you get the best result for all stakeholders.

That’s the true challenge and that’s why I do what I do.

“Whatever the project, or whatever the goal, Angus was always great to work with. Not only is he whip-smart, he also has a cleverness that allows him to approach any challenge with a different perspective than anybody else I’ve worked with before.”

Rob Mann, Marketer at Crew

Let’s Chat

All this to say that I’m looking for the next place I can contribute, learn and help a great team become an even greater one.

I’m currently based in Montreal, but have plenty of remote experience and would be open to relocation for the right role.

So let’s chat.

Thanks for reading,

– Angus