A few days ago, I pointed to an article written by Dan Luu. Ostensibly about recruiting developers, the article looks at some of the nastiest biases that come into play when we recruit software developers. It looks at the habit of only hiring the trendiest, only recruiting from the same six schools and ultimately driving up prices for junior developers who match a certain pedigree while rejecting vast swathes of highly competent and productive developers.
I am a Saskatchewan based startup founder and have felt the problems recruiting and retaining good developers. Startup developers are a rare breed. They have to be a little bit obsessive, prone to march down deep rabbit holes in the pursuit of worthy gains, and completely committed to the cult of early stage. They also have to be comfortable with bleeding edge stacks. You can’t just take someone out of a provincial government software development gig and expect them to be happy or productive in a tech startup.
Going fully remote is an attractive possibility, but it ignores some of the economics of startup developers. If you are a startup developer, unless you are extremely entrepreneurial, you have the most career opportunities if you live in one of about eight cities. These cities have major startup communities with highly advanced angel investor communities and entire ecosystems built to make startups succeed. Because of how sophisticated investors are and how much of an advantage the ecosystems are, smart developers tend to move to these cities because if they don’t like their job, they can walk down the street and get three more offers. This opportunity comes at a certain cost – cost of living tends to be higher. As cost of living increases, wages have to rise. Simply, if we raise money at Saskatchewan valuations and pay developers San Francisco rates, our companies will die.
So, what is a founder to do?
One idea is to change up the way that we think through C-level executive positions. I think that Saskatchewan companies need to pay particular attention to the person who fills the CTO role. In some ecosystems, it’s attractive to find a true 20x developer to fill the CTO role. In those types of ecosystems, those 20xers have enough star power to attract qualified developers who want to learn from them, or build their careers alongside them.
In Saskatchewan, we need a different type of CTO. We don’t need the 20x developer, instead we need 20x leaders. We need the kinds of leaders who can attract and retain 20x teams. If we keep going after 20x developers, our low valuations and lack of local angel investment/venture capital communities will kill us. But if we build 20x teams, particularly amongst those types of developers who wouldn’t get Google interviews, we can compete with major startup scenes while preserving more of our equity (and wealth) for Saskatchewan companies and investors.
Sometimes in our zeal to fill the CTO position with 20x developers, we forget that 20x developers cannot build a company on their own. First, realistically, we need 20x developers for small percentages of a codebase. Even the most complicated, intellectually challenging codebases with complicated custom algorithms has lots of boilerplate shit that anyone can hack together. Second, we sometimes ignore the fact that 20x developers often have certain personality traits that make them a cancer in a good team.
Throughout my career, I have been blessed to meet some 20x developers who are also skilled mentors. But I have met far more 20x developers who could not mentor their way out of a wet paper bag. The skill set to become a 20x developer is completely unrelated to the skill set to become a 20x leader. You will find some who tick off all the boxes, but you’re more likely to find people who are exceptional in one area of the other.
When you have 20x developers with poor mentorship skills in leadership positions, a lot of things happen. Junior developers suffer the most, often finding themselves in positions where their chronological experience does not qualify them for Senior developer positions in other companies. Often, you’ll see Junior developers taking on their 20x mentor’s most toxic characteristics. As teams become more and more toxic, diversity is the first thing to go to hell. As teams start to look like their most toxic members, morale will plummet. You will start to see new developers start on Monday and quit on Wednesday over the lunch hour. From there, the velocity of innovation will start to drop. The 20xers can still innovate, but at this point, they’re usually too busy fixing fucked team to write code. And from there, your startup dies.
Death by CTO. Death by toxicity. Instead, let’s thrive by warmth and let’s build 20x teams. If Saskatchewan startups can get known as the land of 20x teams, we can compete (and beat) startups in major hubs. If we keep doing that, we’ll become the hub we deserve to be.