on hiring
9th of July 2025
One key set of decisions made while building a company centers on
hiring. Apart from the product, this is the most important part of
building a successful company. In this essay, I explore some of the
decisions we’ve made about our hiring strategy at Rhinestone, explain my
thoughts on the interview process and decision making framework and end
with the biggest learnings I’ve made to date.
experience
One core pillar of our hiring strategy is exclusively hiring experienced
people. This allows team members to start contributing as soon as they
join and use past experience to help guide future decisions. This
further builds a foundation of trust that allows every team member to
have a large amount of autonomy in their work.
Many startups I know hire young, inexperienced people for several
reasons: cost, ease of finding them and the potential of upskilling them
to become superstars. However, at this point in the company, we have
decided to not take on the risk of bringing on unproven people despite
these upsides. The main reason for that is startups are hard and any
specific one is highly likely to fail. That means that founders need to
stack all the odds they possibly can in their favour. If a candidate
worsens the odds of success because their performance is uncertain
(maybe they will be a superstar in 6 months, maybe they won’t) then this
is a risk that needs to be carefully assessed. Further, when you start
to grow you can’t micromanage everything (and even if it was possible
you’d be restricting yourself to the ideas you have and decisions you
can make). Therefore, you need team members to be autonomous and trust
them to be able to make the right decisions in the vast majority of
cases and the ability to make great decisions is highly correlated with
relevant experience.
trials
The second pillar of our hiring strategy are paid trials. Popularised by
Linear, the idea of trials is that instead of testing developers with
take-home tasks or live-coding sessions, we get them to join the team
for a short period of time. The benefits go both ways: we get to have a
glimpse into how the candidate works, but also how they perform beyond
their hard skills, such as their interest in the product, their
contributions to brainstorms and their interactions with the team. The
candidate gets to see what it’s really like to be part of the team and
work on projects that we are actually working on.
The downsides of trials is that they are expensive and time consuming.
We need to find the time where a candidate is free (ideally for 3 days),
allocate time internally to actually handle the trial, figure out what
the candidate will work on, spend time with them and review their work.
Frequently, we have to run these trials partially on weekends and we
don’t usually run trials at the same time, so if we have 4 candidates to
put through trials that could take anywhere from 2-4 weeks.
Overall, the reception to trials has been really positive, from hires
and candidates we rejected alike, and the value we’ve gotten out of them
has proven substantive. My decisions feel a lot more thought-out and
backed by substantial data, both on a candidate’s hard and soft skills.
However, one learning is that having too many people go through trials
but not get to the offer stage becomes expensive very quickly. As a
result, we are focused on only going to trial with candidates that we
are highly likely to make an offer to and not see them as just another
filter like interviews.
testing intelligence
During an interview, one of the core things that I aim to assess is a
candidate's intelligence. In my opinion, the best proxy for this is
their reasoning abilities. Generally, this means asking candidates about
problems they are somewhat familiar with and getting them to reach
beyond their current knowledge or think outside the box. Hence, I need
to tailor my interview questions to what I think the candidate’s level
of knowledge is and see what happens if I push further.
good vs great
The second main question I aim to answer in an interview is if a
candidate is good or great. The most important proxy for this is whether
they deeply understand something or whether their knowledge is only
surface level. If a candidate not only understands how something works,
but why it works a certain way and what the tradeoffs are, then they are
far more likely to make good architectural decisions and generally
understand systems deeply. To figure this out, I usually push candidates
to explain why things are the way they are or work the way they do and
get them to guess at questions they don’t know the answer to.
assessment
My general attitude in an interview is that by default it’s a “no”. At
any point during the interview, though, I ask myself what I would need
to hear to start turning that into a “yes”. I think this mindset is
beneficial because it gets me to continuously evaluate how a candidate
is doing and dive deeper into their weaknesses. On top of that, it
allows me to be confident that when I accept a candidate, they exceeded
my expectations rather than just not being bad enough to be rejected.
decision making
Our decision making follows the idea of “hell yes or no”. This means
that if there is not at least one champion of a candidate for whom they
are a “hell yes”, we reject the candidate. It happens frequently that
all interviewers are a lukewarm “yes”, in which case we don’t proceed
with a candidate. This filters out people that we think are good but
don’t surpass the bar and that we don’t think raise the bar of the team
overall. Further, a candidate usually can only be a “hell yes” if I am
excited to work with them not only on a professional but also a personal
level, adding another important data point into the decision making
framework.
hiring doesn’t stop at the offer
One of the most important learnings I’ve made over the last two years is
that the hiring process doesn’t stop at the offer stage. Instead, it’s
important to know that any decision process will make mistakes and
probably quite a lot of them. So just because a candidate has passed the
hiring process, doesn’t mean that they are actually a right fit for the
company. Instead, probation should be seen just like another interview,
during which the performance of a candidate is continually assessed and
if they don’t meet expectations, then we will let them go.
intuition
Probably the most important learning I’ve made (which also pertains to
decisions outside of the company) is to follow my intuition as quickly
as I can. In the hiring process, this means that as soon as I think
something is wrong I will act on it. Most commonly, I will feel like a
candidate that has joined the team is not the right fit and as soon as
that intuition arises I will work on assessing that further. Generally,
this means giving feedback to the candidate and bringing it up with the
team as a first step. We might give specific feedback to a candidate and
see if they improve within a week or two. If they don’t improve, we will
usually let them go after that week or two.
The hard thing about this is trusting your intuition even when the
decision is made under a lot of uncertainty. Almost always, there is no
right decision, but only tradeoffs and it is easy to imagine any
possible course of action leading to a mistake. For example, when I see
a candidate underperforming, I might think that they will improve if we
give them a little more feedback and time. But I believe the hard and
right thing to do is to take one’s intuition seriously and trust it to
yield the best decision.
a- players
The final major learning I’ve made is that A- players can be far more
destructive to a team than B or C players. The reason for this is that
they are much harder to spot and can thus go undetected for longer,
dragging down the team overall. The reason for this is that A- players
(unlike B or C players) get their work done, they just require
additional hand-holding, more time or create hidden problems. I’ve found
that A players are usually quite good at picking up these signals and
are quick to get discouraged by A- players. They will start to feel like
they are not learning and progressing, but they might also feel that the
A- player is dragging down their own performance and opportunities in
the team if their work depends on the A- player. Realising someone is an
A- player is hard, but even after that the situation can be quite
difficult for founders. This is because they do get their work done on
paper, so both sticking to one’s decision and giving feedback can be
tougher than with team members that underperform far more. However, when
you let go of the A- players, the team performance will increase
drastically, because it creates an environment where people trust each
others skills and want to improve to match the levels of everyone else
on the team.