Entrepreneurial engineers are quickly overtaking 10X engineers in appreciation and value.
Software engineering is all about the customer and business needs. The value of a technical solution is only as much as it supports customers and business goals.
How do you find entrepreneurial engineers who have a business-focused approach to software development?
How do you create an environment where they can flourish and make your business take off?
How do you nudge great engineers towards focusing more on the business side?
We bring you answers to these questions from Mark Kinsella, VP of Engineering at Opendoor. He’s been building and scaling teams where the business mindset is essential, and he shares his experience in finding the right type of engineers. Interviewed by Karolina Toth on episode 44 of the Level-up Engineering podcast.
This post covers:
Mark Kinsella leads the engineering department at Opendoor as VP of engineering. His focus has been helping the company scale up. Hiring is a key element to this, so he makes sure to recruit engineers who get things done and work well together.
He spent over five years at Lyft, working with many different teams as Director of Engineering. He loved getting to learn a lot about different parts of the business during his time there.
An entrepreneurial engineer is a business-minded engineer. This means they think about the entire product, from the consumer through the business, the projects, and the products all the way to the tech stack. They use this holistic overview to make the right short-term and long-term technical decisions.
Opendoor isn’t just a technically complicated business, but it is also a highly complicated business overall. We need to make sure our software engineers understand the customers and what they need when it comes to real estate and transactions to build the best product.
They often go from engineer to CEO or CTO and found their own startup. As they learn about different areas of the business, entrepreneurial engineers often come up with their own ideas and use the knowledge they’ve picked up along the way to make them happen.
The entrepreneurial mindset is most common among mid-level and senior engineers. You need to mentor engineers and keep up a strong collaboration to ensure a healthy progression from junior to senior engineer. Ideally, you want 30-40% of senior engineers in your organization, another 30-40% mid-level engineers, and 20-30% junior engineers.
The business mindset becomes useful when it’s built on a strong technical foundation. Entrepreneurial engineers need to be on the top of their game, then go above and beyond for the business and the customer.
They’re creative, out-of-the-box thinkers. There are a lot of unknowns in the real estate industry. This is why we want to ensure our engineers are coming up with creative solutions to solve customer problems.
Collaboration is key. Working on a product, in sync with design, operations, and science for our customers requires collaboration and connecting all the dots for the best results.
Flexibility is a core quality. Things change all the time; we can’t tell what we’ll be working on next year or even six months from now. We need engineers who can handle this, and who push ahead of those changes.
At Opendoor, we need to ingest a large amount of data. Real estate data is public, so we need to process all that data to make informed decisions. We had a hard time importing MLS and home data because it was so messy.
At the end of the day, a few of our engineers went to shadow agents at a different company who were importing this data. They tried to understand the customer’s perspective and what they were doing. They took the insights they’d collected, and managed to build a better data ingestion pipeline.
Understanding their customer made it possible to build a faster and scalable tech solution. This initiative and creative thinking got us to the point where we could ingest more data with higher reliability. This is an example of why we want to work with entrepreneurial engineers.
The strongest channel for finding candidates has been creating a referral system. Our existing engineers have already proven themselves, and the people they know are more likely to be great additions to our team.
We advertise our business complexity in our job postings. Many engineers want to work at a place like Opendoor, where they get to impact the real world and solve exciting technical challenges. We make sure to always talk about the potential business impact in our job advertisements, in addition to the technical complexity.
There are two questions I like to ask that give me insight into their mindset.
The first one is, “Tell me about a time when your project didn’t go as planned or failed to hit the mark.” These things happen to all of us; I don’t expect everything to work out. The important part to dig into is what they learned from that experience.
Entrepreneurial engineers constantly experiment, so they’re okay with failures, and they learn from them to make themselves better.
The other question I always ask is, “What do you want to learn at Opendoor?” Software engineers often want to join a company specifically to work on exciting technical problems.
The answer that I’m looking for in business-minded engineers is, “I want to build something amazing for customers.” Or it may be something like, “I want to change the real estate industry.” These answers show a motivation that goes beyond the tech stack.
You can spot the business mindset while you’re chatting with a candidate. It’s whether they’re interested in discussing the business metrics, the product, and potential solutions for user problems beyond just the tech stack. An entrepreneurial engineer wants to understand both areas.
All this is built on top of the technical evaluation. We have five different interview modules. Four of them are focused on technical capabilities, like coding, system design, and whiteboard interviews.
The final module is the experience interview. That’s where we talk about past projects the candidate has done. We focus on leadership skills, impact, project management, collaboration and mentorship. Mid-level and senior engineers are evaluated on these soft skills as well.
Our software engineer career ladder provides two career paths: individual contributor and engineering manager. They’re parallel pathways. There are options for employees to move between the two pathways.
We’re looking for leadership soft skills on both paths. This includes project leadership, team leadership, and business leadership. You need leadership skills to get to a senior level both on the IC pathway and on the EM pathway.
You have to accept that not every engineer is going to stay at your company forever. Whenever my engineers go off to do their own startups, I consider it a success. This means I’m doing a good job in engineering leadership by fostering a business mindset.
Entrepreneurial engineers tend to stick around for about two to four years in my experience. This time span allows them to get up to speed, heavily impact the business, and learn about new areas of the business.
Entrepreneurial engineers often get restless. They always want to learn and experiment so it’s difficult to keep them around. Internally transferring them between teams is a great way to keep up their interest and to keep them motivated while staying at the same company.
For example, I transferred between teams at Lyft every 18 months. I recommend engineers at Opendoor to change teams about every 12-18 months.
The teams are permanent in the sense of pursuing the same goals and working on the same parts of the product. The business metrics are the primary focus, and those rarely change.
Twelve-18 months is enough time to ramp up, learn new skills and impact the business. Once they've done that, they can move on to work in the infrastructure team, or switch focus to the seller side of the business from the buyer side.
Connect the new developer with a mentor. Ideally, the mentor has been at the company for a longer time and is more senior, so they can answer all the questions that may come up about the product and the company.
Opendoor puts a lot of effort into creating a strong onboarding process for software engineers. This is even more important when you need to set up a remote onboarding process. We have every new joiner spend their first four days in an onboarding program.
This includes learning about the customers, understanding the business, and understanding the tech stack. This is essential to kickstart an engineer’s career at Opendoor.
We make sure that engineers are working on the areas they’re most passionate about. In my experience, software engineers do their best work when they’re connected to what they’re working on. This guarantees that our product will be high quality, and our engineers will come up with creative solutions because they want to do amazing work.
We make sure to give our engineers the resources and the support to be successful. We provide them with a connection to the customers and to the business metrics, and we provide them with the necessary tools and processes.
We have to be okay with failure. We give our engineers ambiguous problems, and allow them to figure it out. Some endeavors are naturally going to fail when you’re trying to make massive improvements.
As long as the intention and the concept were correct, you need to accept this. Just make sure that your people learn from these and continue to get better.
We launch an experiment with an expected impact. After a previously agreed upon time period, let's say eight weeks, we broadcast the results internally.
If the experiment hit the numbers we wanted, we launch it in a bigger scale. If it didn’t, we check why, see what we can learn, and use that insight for the next experiment.
We’ve set the expectation across the board. We make it clear that every engineer is responsible for improving the business and making the lives of our customers better.
Help your engineers connect the dots between the code they write and the impact on the customer. This is the most important role of engineering leadership. It’s easy to get caught up working on the infrastructure and to lose sight of its impact on people who are buying and selling homes.
Helping your engineers connect the dots and see the purpose of their work is the most important piece.
I aim to structure our teams like they’re their own startups.
At Opendoor, we call our teams EPODs. This stands for Engineering, Product, Operations, and Design. Every team is a cross-functional unit with clear business metrics that they’re working to improve.
The goal is to minimize cross-functional dependencies with other teams. This allows our engineers, designers, and every employee to focus on their own teams. They have their top metrics and their top customers to focus on, and that’s where they aim to have the biggest impact.
There are two different ways to think about metrics: input metrics and output metrics. Output metrics affect the customer directly. Ideally, engineers should always prioritize output metrics.
We believe in improving 1% every day. When you go to work, you aren’t expected to increase a metric by 20% or make a function 20% faster. The idea is to add incremental improvements every day, so by the end of the month, or by the end of the year, we’ll have significant progress.
Our engineers are constantly learning and getting better at their jobs. This is essential for business-focused engineers. As their understanding and skills ramp up, they can keep incrementally improving the product.
This is a good mindset to take with yourself when you run your own startup.
More senior engineers can take on more ambiguous projects. When it comes to a senior engineer, you can give them a problem and trust them to figure out the details by themselves, come up with a solution and implement it. Dealing with ambiguity is an area of growth, especially for mid-level engineers.
Engineers with a business mindset crave feedback.
We have different types of feedback: peer feedback, manager to their direct reports, and direct reports also give feedback to their managers.
When it comes to feedback, the baseline for me is to give and receive feedback about your performance, not about yourself as a person.
Opendoor has a strong feedback culture of providing both positive and critical feedback. We expect everyone to make sure the feedback they give is actionable and also provides specifics.
Provide feedback on the spot, or at least as soon as possible, whether it’s positive or critical feedback. This helps others learn from it.
Leaders need to show by example that we’re running a marathon, not a sprint. I’m excited about the work we’re doing, but it’s important to relax and take a vacation sometimes. Leaders often forget this.
There are always a ton of things to do, but we can’t all work 60 hours a week. That doesn’t work in the long run. Don’t set your expectations too high and make sure to prioritize.
Working on different parts of the product and doing different types of work also prevents developer burnout. Every new development phase starts with creative brainstorming mixed with architecture and project planning. Then engineers focus on the technical output, testing and QA, monitoring, alerting, etc.
When an engineer is coding eight hours a day for four weeks straight, they’re more likely to burn out than if they’re working on the different pieces of the puzzle.
🚀 Need developers for your team or project? Hire our experienced Angular, React or Node.js developers! Click here for a FREE consultation.
About the author:
Gabor Zold is a content marketer and tech writer, focusing on software development technologies and engineering management. He has extensive knowledge about engineering management-related topics and has been doing interviews with accomplished tech leaders for years. He is the audio wizard of the Level-up Engineering podcast.