Our Expert in Residence, David Mytton, shares his hard-won insights on how to build your early engineering team. Previously, as the CEO at Server Density, a SaaS cloud monitoring product (acquired by StackPath in 2018), he ran product engineering in a team of around 300 people before leaving in 2019. In January 2021, he launched console.dev, a free weekly newsletter for experienced engineers to find the best devtools and jobs.

How do you branch out and source candidates outside your personal network? What are developers looking for, and how do you stand out? How do you know whether someone is good or not? Do degrees or specific tech experience matter anymore? What are market salaries?

These are some of the key questions David will guide you through in his two-part article focused on sourcing and selecting engineering talent in early-stage startups.

Hiring developers is hard. Hiring good developers is even harder.

When building your first engineering team, as an early-stage company, you’ll go through two main stages: 1) Sourcing and 2) Selection. 

Before sourcing, essential preparation is answering some of the key questions a developer or engineer wants to know before they consider applying:  

It’s not sufficient to think about them and write them on a private Notion page. You actually need to get them online and start the selling process before you even put job ads out and start speaking to engineers. Good candidates do a lot of research into the company. The best engineers are rarely on the market, but when they see an interesting company, they want to learn all about it.

In Part I, I focus on sourcing engineering talent, from writing a compelling job ad to defining your selection criteria and identifying the right channels to reach out to potential candidates. 

Sourcing Engineers

Finding good engineers in the first place is challenging. Start by figuring out what you are going to put in your job ad. 

The question that you’re trying to answer with this is, What will I be doing?”. 

The areas to focus on are:

 1) Putting in real numbers 

 2) Publishing what your selection criteria are

If you don’t have a product in production yet, then putting real numbers in is a bit more challenging. This was a good way that we used to promote what were doing at Server Density, my previous company, because we were processing huge volumes of monitoring data. 

We were processing over 150,000 writes per second into the database. These numbers are interesting to developers because it shows you’re operating at a level where they’re going to have to solve interesting problems. If you’re not at that scale, then you can think about the challenges that you’re solving in the product. UX challenges are interesting if you’ve got a product that is doing some innovative things on how your users interact with it; interesting things that you’ve done in the backend to deal with large volumes of data or transforming data; anything where there’s an interesting technical challenge, whether it’s at scale, whether it’s interesting algorithms using interesting tooling and technologies, those are all things you can highlight in the job ad.

Next, it is essential to think through the selection criteria because it’s how you assess candidates in an objective way. Putting these into the job ad shows that it’s going to be a place that is thoughtful in how it evaluates candidates and is relevant to their current experience.

Also, be aware of what you shouldn’t include in the job ad: a long list of detailed requirements (e.g., very specific technologies, excessive numbers of years of experience in those technologies, and things that really are nice to have rather than actual requirements). Otherwise, it rules people out. If you put too much, people just won’t apply. 

I would always prefer to spend time filtering more applications to find an outlier who might not otherwise have seemed like a fit than have them not apply because they didn’t hit all the requirements. In particular, this applies to university degrees, which are generally irrelevant for startups. Unless you’re doing something in a very deep tech, scientific sector, there’s some regulatory requirement that means you have to have certain qualifications, or you truly need the algorithmic background that computer science brings, having them just rules people out. I’ve yet to find a startup that actually needs people with specific degrees.

Once you’ve sorted out the job ad, the next task is actually sourcing engineers. Below are some of the best places to start, broken into three levels with different frequencies of use:

Level 1: Everyone uses these recruiting channels

Your network: The first step is using your network – people you know, your friends, and people that your investors and other founders know who might be interested in joining the company.

This can scale for a surprising number of people. Once you’ve got a couple of people in, having them bring their friends in is a good way of building that initial team. The caveat to that is that you are more likely to be hiring people who are similar to you, which is generally fine at the beginning but starts to introduce diversity challenges pretty quickly. Having diversity of thought in all sorts of different ways is really important for solving those difficult problems later on. 

LinkedIn: Despite the fact that it’s not very effective, it is something that you have to do. Developers tend not to use the platform, even though they might have a profile. However, it is a way of finding people by company or job title and then using that to locate them in other ways.

GitHub is a very good way of doing this. A startup I know used the GitHub API to find a large number of profiles and do a lot of filtering to go out to make individual contacts with the developers on there. Often the email address is in the profile. If you want to be really cheeky about it, you can clone the Git repository and look at the Git log to get their email address, but you have to be careful with this because just spamming developers with generic emails is not going to put your company in a good light. Make sure the email is customized and relevant.

Jobs boards are another option, depending on the type of engineers that you are looking for. The best engineers don’t really use job boards because they already have good jobs, and if they want another job, they’re going to be able to find one very easily. They’re good for less experienced developers. There are job boards that specialize in certain areas, but they tend to be pretty low yield in terms of the success rate but very high volume in terms of the applications. It’s something that’s worth doing because it’s not particularly expensive, but the success rate is particularly low. 

Level two: Things that lots of people do, but not everybody

Candidate search platforms Hired and AngelList (now Wellfound) are options that work. There are profiles on there, but they suffer from the same problems as job boards, even though they are a bit more specialized. AngelList has a reputation for being good for startups, which narrows down the filtering quite a bit. However, they are also high volume and low yield.

Depending on the type of person that you are looking for, universities can be quite good. They tend to work on the university term cycles. There’ll be more people who are interested in jobs as we get into the summer term compared to the beginning of the academic year. This makes it more of a longer-term source of inexperienced candidates, but don’t forget the graduate students as well – they may be taking a career break and could have just the experience you’re looking for. Universities are very keen to engage with potential employers because it’s all part of the statistics that they publish about how their graduates go to get jobs afterward. 

Recruiters are another option, but you have to really think about the incentives and for which roles those are particularly important.

Unless you are headhunting an executive or you are recruiting just one or two people, recruiters tend not to work very well because the incentives are misaligned. If they’re on a retainer, then there’s no real incentive for them to find anyone quickly. And if they’re on a success fee, then their profit decreases the more time that they have to spend searching.

So the only real way to use a recruiter is when you’re hiring five to 10 people or more, and you have someone in-house, either as a contractor for six to 12 months or on a permanent basis. They are then incentivized to hire good people because they’ll be working alongside them.

Level three: Few people do these things, and they certainly don’t do them well and consistently

Blogging is probably the most effective way of hiring people, but it takes a lot of time, and you don’t see the results right away. If you’ve ever read anything on the Cloudflare or Fly blogs, then you’ve read a recruiting blog. Their primary purpose is to hire engineers from technical blog posts. You can see the type of quality of blog posts that you need to write. 

These blog posts also serve as a great way of raising the awareness of the engineering organization. You have to write technical blog posts. You have to get technical people to write them, and they have to be very high quality. The problem is that engineers want to be writing code rather than blogging, so this often requires dedicated teams of marketing engineers. In the early stages, that will just be one of the technical founders – it’ll be one of the highest-yield tasks you can do.

There are often other communities that people are part of as well. You can mine these by actually just being involved – not scraping the participants and spamming them, but being involved in a way that raises your profile. Within this, open source is another way of finding people to hire. If you’ve got open-source projects, then hiring your contributors is a good way to get people on board.

Conclusions and key takeaways 

Before even publishing your job ad, make sure you answer the key questions every talented engineer would have before applying, from company culture to how code is shipped:

Putting in real numbers and publishing what your selection criteria are essential in the sourcing process. They provide candidates with specific insights into how the engineering organization operates and also help you filter the right profiles. 

Stay tuned for Part II, which will guide you through the selection process for building your first engineering team. 

The advent of ChatGPT is just the tip of the iceberg of the emerging natural language processing (NLP) technologies and applications that are fundamentally changing human-computer interaction and, ultimately, our daily work.

With the increased adoption of model architectures and frameworks, developers are focusing more and more on improving the data used to train AI systems. Taking a data-centric approach enables them to use a set of common algorithms and then increase the number of training samples severalfold (e.g., from 10,000 to 50,000) or reduce the number of errors in the training data.

This is why we are excited to back Kern AI, a data-centric platform to power natural language products, workflows, and ETL pipelines. Founded by Johannes Hötter and Henrik Wenck in November 2020, the Germany-based company is building a platform designed for developers who want to implement data-centric NLP solutions. Its use cases range from internal workflows for operational or analytical purposes, such as complex customer-facing services, to building sophisticated NLP applications with their platform as the training database.

Johannes Hötter highlights:

“Kern AI aims to build software with an outstanding developer experience. We strive to provide users with the flexibility to create what they want and to reduce the time between an idea and its implementation. We are confident that Natural Language Processing (NLP) will continue to grow, and with Kern AI’s modular platform, developers have all the resources they need to deploy use cases. This is what we excel at and what we want to demonstrate to the world.”

Since launching in July 2022, the open-source version of refinery and of the content-library bricks have reached several thousand developers. Both projects are available to download on Kern AI’s GitHub page. 

Aiming to empower developers to manage complexity, the Kern AI ecosystem consists of four products: 

The company’s suite of products is used by data scientists at AI-driven organizations (including Samsung, Barmenia, DocuSign, co:here, and Seedcamp-back crowddev) to perform label automation, cleansing, and monitoring. Further possible applications include retrieval, outbound classification, named entity recognition, sentimental analysis, and more.

On why we invested, our Managing Partner Carlos Espinal comments:

“Johannes and Henrik have a deep understanding of the needs of NLP developers and data scientists and the ability to execute efficiently at scale. With their unique product insights and developer-centric approach, Kern AI is well positioned to become a fundamental tool for every company leveraging NLP.”

We are excited to co-lead Kern AI’s  €2.7 million seed round alongside Faber, with participation from xdeck, another.vc, TKM Family Office, and business angels Marcus Nagel, Julius and Sebastian Heinz, Nicolas Peters, and Gerrit de Veer.

With the fresh funding, the team plans to expand their platform’s capabilities and use case catalogue, grow their developer community, and make it generally available to the public.

Starting today, Kern AI also onboards individual developers in their free tier. Join the waitlist and request a demo at kern.ai.

When done right, strategic partnerships can be transformative for early-stage companies. Joining forces with an established player in the market brings you much-needed validation and can help you acquire new customers and generate new revenue models.

Our mentor and executive at portfolio company, Elliptic, Elsa Said-Armanet, shares how to set the ground for and implement a strategic partnership. Based on over a decade of experience building and leading partnerships at companies such as Stripe, Twitter, and Google, Elsa’s insights will help you and your team successfully select a strategic partner, prepare and carry out your first negotiation, and measure the results of the collaboration.

Read our deep dive interview:

1. What are the first steps in building a strategic partnership from a startup’s perspective?

ESA: The first steps are internal. A Partnerships function needs to be integrated with and supported by a number of other functions within the company, typically product, sales, finance, marketing, and business intelligence. You need to define your partnerships strategy in the context of your startup’s priorities and those of your other functions, most notably product, and engineering, respectively, sales and marketing. Partnerships should build an internal flywheel where they contribute to each of these functions, motivating them, in turn, to support partnerships with user research, product development, partner marketing, and go-to-market support.

2. What should founders have in mind before approaching a potential strategic partner (e.g., a corporation, an institution, etc.)?

ESA: Some of these strategic partners could be foundational partners: these are the partnerships that you might need because your product could not exist without them. For instance, if you are a Fintech startup, you may need to have a sponsor bank, making this a priority partnership for the business.

If this is not a foundational partner, avoid entering into a partnership at a too early stage, in particular, if this is a distribution partner. Your product must already have some traction in the market without the help of a partner. If this is not the case, this will put you in a very precarious situation. For a startup, partnering with a large company can be trajectory-changing, whereas, for large companies or institutions, the partnership may not even be a strong priority. If your company doesn’t have product-to-market fit before entering the partnership, you will have difficulties negotiating reasonable terms from a strategic partner.

Choose your partners wisely, start small. Don’t start with your favourite or largest possible partner, focus on smaller, fast-moving, tech-savvy companies which are eager to collaborate and launch a pilot with you. Measure the outcome of your pilot. This will help you refine your partnership proposition and/or approach larger partners with a much more compelling value proposition, thereby giving you a much stronger positioning in the negotiation with more strategic partners.

3. How should startups approach their first negotiation with a strategic partner?

ESA: There are many ways to approach a negotiation, and every strategic partner will have their own style. However, it is essential to master the general/basic rules of engagement:  

4. How should founders define and prioritize the goals and outcomes of a strategic negotiation?

Be clear on your own company and functional goals, and why you decided to discuss a partnership in the first place. Are you trying to drive user acquisition by developing a delightful new user experience? Or is your goal to create a new revenue generation vertical by making your partners pay to join your marketplace?

Your goals and values should be aligned with those of the partner, and this alignment should be visible early on in the discussion. If this is not the case, or if you see that the negotiation becomes very difficult, then it is likely that there is a cultural or goal misalignment with your partner company, and it’s often best to pause the discussion otherwise, even if you manage to sign a contract, the partnership is likely not going to be productive longer term

Identify must haves and nice to haves in the discussion:

Typical metrics are:

[More information on metrics relevant to distribution partnerships can be found on the Crossbeam blog here]

5. How can founders deal with (inevitable) rejections? 

ESA: Strategic partnerships sometimes require a multiyear timeline horizon for their execution, so it’s important to keep a longer-term vision in your approach to building and investing in your partnership function.

Failure or rejection is fairly frequent in partnerships, but they are not necessarily permanent. View rejection as a “low point” in your multi-year relationship with the partner. Learn from it, and make sure to keep in touch with your partner occasionally (don’t overdo it either!) in a friendly way, even if nothing is moving.

Keep in mind that you can’t fully control or “de-risk” the outcome of a partnership discussion, given that, by definition, the successful execution of a partnership doesn’t only depend on you but also on the partner. A strategic partner may have multiple reasons to drop a partnership conversation, such as internal reorganizations, budget cuts, changes of priorities due to market conditions, or differences in company culture between your company and that of the partner.

What matters is not that a specific partnership discussion failed but what you do instead to maintain a good relationship with the partner. Be it at Stripe or Elliptic, I have seen several partnership relationships start on the wrong foot, would pause the discussion, and rekindle it sometimes one or two years later, especially if internal stakeholders changed in the meantime. It is also important for you to reflect on what you learned from the relationship with your partner. Perhaps this is a sign that you should approach a different type of company, revisit your partnership business model, or do some user research on what your users would value from a partnership. This will help you succeed with your next partnership negotiation.

6. How can startups leverage the power of strategic partnerships as they prepare to scale?

ESA: Strategic partnerships can drive material impact on a startup in many ways, for instance:

Conclusions and key takeaways:

Before entering into discussions with potential strategic partners, clearly define your company and functional goals. Also, make sure you align your goals and values with those of your partner. To ensure the long-term success of the collaboration, focus on what will help drive revenue from the partnership.

The pandemic has been one of the most powerful accelerants for digital transformation in recent years. At record speed, CIOs, CFOs, and CTOs were forced to adopt flexible cloud strategies and tools that enabled them and their teams to take control of their mission-critical workloads and data management. However, fast adoption is only the first step in the process of delivering software products at scale.

This is why we are excited to back Kubeark, an early-stage startup founded in April 2022. Based in New York and Bucharest, the company’s mission is to support enterprises fix their scalability, delivery, and lifecycle management challenges.

Bogdan Nedelcov, Kubeark’s CEO and co-founder, emphasizes:

“Software vendors currently struggle with their hybrid cloud infrastructure and the transformation of products from on-premises to cloud on a large scale. Kubeark helps them achieve operational excellence regardless of where their infrastructure resides: on-prem, public cloud, or private cloud. Our platform ushers in a new era in which software products are delivered as true Saas products, helping vendors speed time-to-value, hyper-scale their distribution, and SaaSify any piece of software instantly.”

On why we invested, our Managing Partner Reshma Sohoni comments:

“We are excited to back Kubeark, a company founded by an incredibly experienced team with roots at Seedcamp-backed UIPath. Their holistic yet versatile solution has the potential to supercharge scalability in an efficient and secure way.”

The six-strong founders’ team includes CEO Bogdan Nedelcov, CTO Teofil Harapcea, VP of Engineering Adrian Tudoran, VP of Customer Success George Dumitrascu, VP of Product Bogdan Dumitru, and Mihai Faur (Board Member). They have all worked together across business and technology roles at Seedcamp-backed and now publicly-listed UIPath.

Designed around a “Kubernetes as a service” offering, Kubeark’s open infrastructure-agnostic platform is built to scale any software product integrating deployment and management into business processes. It enables software vendors to remove the complexity of their application development lifecycle by deploying, managing, and scaling applications on any type of infrastructure, from private or public cloud to on-premises, for both open and closed systems. 

The company has raised $2.8 million in a pre-seed funding round led by Credo Ventures, with our participation alongside LAUNCHub Ventures, 500 Emerging Europe, and others. With the fresh funds, Kubeark plans to accelerate platform development and build a strong network of global partners.

For more information, visit kubeark.com.