What Makes a World-Class Engineer?
As an engineering manager at Creative Market, my entire job description can be summarized in one statement: build a world-class engineering team. We want to make Creative Market into a world-class company with a world-class product and world-class engineers to build it.
The good news is that we already have a group of incredible engineers who make that job pretty easy. But the obvious questions must be asked: What would take this team (and each individual on it) to the next level? What are our strengths, and how can we maximize them? What are our weaknesses, and how can we improve them?
So, over the past couple of weeks, I’ve asked each of my engineers what they think our team does well and what we don’t do quite as well. Across the board, everyone pretty much agreed on our greatest strength: we are great at being excellent to each other.
Our engineering team is supportive, caring, kind, humble, and gosh-darn-it, people like us. That makes for an incredibly rare and positive environment. A lot of engineering organizations optimize for technical prowess and/or speed of delivery at the price of hostility, drama, one-upmanship, and credit stealing. It’s just not like that here. And this most excellent culture is one of the things that makes Creative Market a wonderful place to work. I have zero desire to take away that positive, friendly atmosphere.
But the team had some frustrations too, and most of those centered around a feeling that we aren’t shipping features quickly enough or making enough progress on the things that matter to them, like replacing older, problematic portions of our codebase. They felt that, in general, we are a great engineering team, but there’s room for improvement. Because, of course, a friendly person does not a world-class engineer make, and none of us would be satisfied working in a place where everybody’s nice to each other all the time, but little of value is ever shipped (at least, not on time).
However, it became obvious that we also didn’t have a clear picture of how best to improve our team or even what it means to be successful as an engineer at Creative Market. So I followed up and asked some of my fellow engineers (those who have been around longer than I have) what they see as the difference between a good engineer and a great engineer. I also wrote down some of my own thoughts based on the behaviors and attitudes that separate our best engineers from the pack.
Here are a few things we came up with:
- Good engineers excel at delivering quality code. World-class engineers also excel at delivering impact. (paraphrased from Chris Winn)
- Good engineers code quickly. World-class engineers also work to improve speed of delivery across the team: better planning, better tooling (snippets, linters, etc.), better automation, etc.
- Good engineers solve problems. World-class engineers also take initiative and ownership before something becomes a problem. (paraphrased from Steven Rathbauer)
- Good engineers accomplish the tasks they’ve been assigned. World-class engineers also have a personal backlog of things they want to fix/change/improve, and they work on this list in the gaps.
- Good engineers are satisfied with writing good code. World-class engineers also continue to look for ways to improve it and make it even better. (paraphrased from Kyle Arch)
- Good engineers write the code. World-class engineers also write the documentation.
- Good engineers care about their work, their career, and their team. World-class engineers also have a passion for the product they are building. (paraphrased from Chris Madrigal)
- Good engineers receive feedback well, take it to heart, and improve themselves. World-class engineers also give useful feedback to their peers and their managers.
- Good engineers are learners. World-class engineers are also teachers. (paraphrased from Steven Rathbauer)
- Good engineers ask the right questions to understand scope, and they ship features on time. World-class engineers also ask the right questions to course-correct and improve scope before writing a line of code.
- Good engineers can work with code. World-class engineers can also work with people. (paraphrased from Sarah Alexander)
Bonus list for those in technical leadership roles:
- Good engineers adopt and play by the team’s rules about code styles, technology adoption, code reviews, and deployment. World-class engineers also have strong, well-formed opinions that they share to shape and improve those rules over time.
- Good engineers get tasks out the door. World-class engineers also understand the code ecosystem from a bird’s-eye view and are able to question the bigger task at hand with internal questions like: Is this something we need? What are we really trying to solve here? (paraphrased from Alana Anderson)
- Good engineers think through the current sprint before building. World-class engineers also think several sprints ahead and prepare their code for upcoming features (without creating a bunch of extra work for themselves or others).
Looking at that list, I think the overall theme can be boiled down to this:
World-class engineers go above and beyond what is assigned to improve the team, the product, and the company in ways that—while within their realm of influence as an engineer—may or may not have anything to do with code.
An example of this in action:
When working with Chris Madrigal to rebuild parts of our product editor earlier this year, he constantly added improvements to both the code structure and the UI that were beyond the scope of our project. And he still delivered on time. There were things in our product that had bothered him, and rather than complaining and waiting for tasks to be assigned by a PM, he owned those fixes and improvements, saying “I’m going to make this better unless somebody objects.” And when Product or Design had feedback or criticism, he engaged them, took their comments to heart, made appropriate changes, and moved on, happy that the product was better for their input.
And he’s not alone. Kyle Arch did not wait for a task to be assigned to him to begin working on improving our back end framework. He started experimenting and working through ideas in the cracks between other projects, looping in other engineers, and built what is becoming the foundation of our codebase moving forward. Alana Anderson, after moving to a squad that did not yet have a backlog of tasks, asked the team what else needed to be done and jumped onto an initiative to improve our on-boarding documentation for front end engineers. Working alongside other front end engineers, she created a process that is being used to get new engineers up and running with astonishing speed. Steven Rathbauer, when he had only been at Creative Market for a few days, realized our front end build process was slow and in need of updates. So he took it over and has continuously updated and improved it over the past year. Now it takes less than half the time it used to take to build and deploy front end assets. I could go on.
These engineers aren’t just great people/teammates (they are). They aren’t just smart, fast programmers who crank out clean code (they are). More than that, they love and believe in Creative Market, and they do whatever they can to make our company and product even better. They find ways to align their skills and passions with whatever challenges present themselves.
This level of urgency, care, and ownership is what really distinguishes world-class engineers. It motivates them to write a lot of high-impact code, to deploy quickly, to communicate well, to learn, to teach, to innovate, and to form opinions about the best ways to improve everything they touch.
So as we work to level up our engineering team as whole, that characteristic of urgency, care, and ownership will be the North Star for every engineer on the team. Are we there yet? No. Of course not. We all have room to grow, and we always will. The exact path forward and the end result will look different for each of us, of course, because each of us is unique. Homogeneity is not the goal; excellence is. But in the end, having this shared direction will empower our engineers to own and solve challenges within their realm of influence and to contribute their individual passions, skills, and dreams to push Creative Market to a new level of excellence.
We’re always looking for amazing people to join the Creative Market team (and we’re hiring engineers right now!). We value our culture as much as we value our mission, so if helping creators turn passion into opportunity sounds like something you’d love to do with a group of folks who feel the same way, then check out our job openings and apply today!