Over the last 3 years or so I have had to hire/help-to-hire a lot of senior engineers, especially in small to mid startups.

Usually it is in a role where the person would be the main pivot of the team and be responsible for a project.

A thread on what has worked 🧵👇🏼
Over the last couple of years the tech hiring market has become more and more uphill. If you're a small startup, it is super challenging today. There are funded startups who are dying off because they are unable to corner tech talent. So the challenge is very real here.
Small caveat here - these are contextualised a bit towards Android, as that's what I have mostly hired for. Although the same methods and principles I have used for things like Node/Java backend too which has worked out well.
So first of all, I do not get into DSA questions AT ALL. I do not believe good DSA skills are not needed to be a good developer, but the engineers in the market today who *like* going through a DSA process are not looking at small startups, they are aiming for FAANG.
There are ways to judge if a person has good basic understanding of core programming concepts and they will be able to come up with the correct data structure needed at the correct time. Coming back to it. But throwing a LeetCode at people, seems pointless to me for these roles.
The biggest constraint in the hiring market is that the people are many times on notice periods, shopping 5 offers, and closing the process fast is important. So being able to judge quickly is important.
Aiming for >90% correlation b/w round 1 and hire is v. imp. It is possible
How can you take a 30 min intro call, and with 90% accuracy gauge hire/not-hire in this zone ?

Some assumptions -
- this is a mid-experienced person, so 3-4 years under their belt
- this is tech-specific role, not a general SDE hire
What needs to be quickly figured out ?

- growth (how they have evolved in tech in last few yrs)
- pressure (can they get the tech team our of sticky place)
- passion (early startup tech teams should have folks who live to code, not code to live)
- process (soft skills & comm)
Growth:
make no mistake but 2 people working on the same tech, in the same org, for same amt of time could have had orders of magnitude difference in growth, so this is important to judge. past record is usually a strong indicator of future performance in this.
Some questions I definitely ask to figure this out (using real examples so Android specific)

Q. In last 4-5 years which new Android APIs came out you have loved and hated ?

Q. Which architecture/design pattern you had most trouble grasping in your early days ?
Q. If I asked you to make a TodoList app, how'd you have made it 4 years back, how'll you make it today ?

Q. What are some things you like working with Kotlin (vs Java), and any things you hate ?

The idea is simple - have they grown and can they narrate their growth ?
The new Android APIs question itself probably has a >80% correlation to hire/no-hire.

If you're working with this tech for 4 years, and
a) have not kept up-to-date with new developments
b) do not have any strong opinions about them
You really haven't grown.
Pressure:
For this kind of role, getting out of pressure scenarios is an important skill to have. Mind you though you'll find people who have spent 4-5 years at work and haven't yet ever had an opportunity itself to experience pressure, and overcome it.
Some questions I prefer to ask around this

Q. When was the biggest live-production issue you faced ? How did you go about firefighting it ?

Q. Which is the most irritating bug you have come across till now ?

Side note: If you're 3+ yrs exp you should have good war stories
Passion:
Work Life balance is important and personal mental-health is for individuals to find out their own 'zen' for. But what is important is that the pillar around which a small tech team is formed has to be a person who loves the craft.
Judging passion is simple - mostly through the interview you get the vibe, when you've talked with enough people in tech, to get a broad understanding of how passionate they are about their craft.

But some questions go a long to validate this.
Q. What books/blogs/experts in your field you follow ?

Q. How do you stay up-to-date with the latest APIs and libraries ?

Q. Have you explored some adjacent tech stacks ? (For Android folks - RN, Flutter, iOS dev), what pros and cons you saw in them ?
Q. Is there any particular boiler plate you've written over and over and thought of turning into a small personal reusable library for yourself or your team ?

Github profiles are a strong indicator of this too - projects someone has done purely to learn more, if any exists.
P.S. When I say irritating bug - I mean hard to debug, difficult to reproduce, and took a lot of time to find solution or workaround to.
Once growth, passion and pressure are judged for, the biggest mistake I used to do early on, was not focus on process.
No I put a lot of emphasis on understanding that.

Apart from a hire/no-hire call, understand how a person works helps figure where to put them.
If someone ticks all the above boxes, but still doesn't check the process box well, you'll eventually need to pair them up with a EM/TPM/PM who has better processes, and then in a small team, that starts messier.
Process faults rear their head much longer down the line.
Q. What the lifecycle of a feature where you work? From thinking of product, to building and shipping it, who does what ? Which parts you play.

Q. In your team's current process, which part you love the most, which part you hate ?
Q. If you had to lay down a process from scratch, freedom to pick any project management tool, testing, release strategy, and assign key responsibilities to stakeholders like PM, QA, Analyst, Engineers - how'll you go about it ?
Q. How do you do PR reviews ? When you disagree on low-level design, how do you share the feedback, what happens if the feedback is acknowledged but not accepted ?

Q. For a larger product feature, how do you spec out the HLD ? Who all need to be involved in that discussion?
Q. Consider I am your current manager, and we are about to do an appraisal. What are some of your recents achievements and what are your improvement opportunities ? Try to convince me that you deserve a raise as well, based on last few months work
Remember this is the intro call, you wouldn't want to exceed 1 hr on this, aim for 30, wrap in 45.

So we are not going super deep into any thing. Ofcourse if this round is a yes, we need to follow up with at least 1 validation of tech skills (take home project etc).
I am not getting into how to do the deep tech-eval in this thread, maybe for another time (and it is very domain/tech specific too).

Wanted to jot down some of my recent learnings, most of this framework has been built upon a lot of trial and error, and 200+ interviews.
You cannot take this framework and apply directly and get to reduce your hiring process length by half or so immediately.

My initial goal was to first tweak the 1st round without changing anything else, to achieve that >90% or >95% round1 to hire correlation.
Once that point is reached, a confidence builds up in the process, and then the later stages can be cut a bit, number of rounds can be reduced.

Also you know better the 'agenda' of round 2, if you plot a SWOT for these 4 traits (growth, pressure, passion, process)
Sometimes I might feel it is a

growth ✅
pressure ❓
passion ✅
process ✅

after round 1, then I know that the agenda of round 2 is to test more about the pressure side. If no war stories exist, then give a contrived example of pressure scenario and find out etc.

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Arnav Gupta 😷 💉1️⃣🟢 💉2️⃣🟢

Arnav Gupta 😷 💉1️⃣🟢 💉2️⃣🟢 Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @championswimmer

1 Aug
I don't build social media clout for a dopamine fix.

Social media clout today is part of the essential consumer survival kit.

It is not only easy to access redressal mechanisms with most B2C businesses if you have clout, but in fact the only process of it happening today.
If you do not have the capability to raise a rabble, you just have no insurance against bad consumer experience and dealing with faulty products/services in today's world.

This is just the Black Mirror-esque world we live in now.

"Social credit scores" actually exist
I have regularly had experiences where my problems got fixed - exact same problems for which my friends who are not active on social have gotten the short end of stick.

In fact, the extreme end of *this* very spectrum is B2C brands sending freebies to influencers.
Read 4 tweets
30 Jul
It has been almost 7 years, I'm teaching people to code, make apps and websites.

It is interesting how a lot of movers and shakers in today's edtech ecosystem (esp in the programming space) can be traced back to one tiny office in Pitampura, New Delhi.

A thread 🧵👇🏼
Before me and Prateek, Coding Blocks originally was started by Ankush (who now runs Coding Ninjas) and Anushray (who later was CTO at CueMath for a long time)

Tushar used to teach there too, and went on to build Coding Ninja's initial tech stack and a lot of CampK12's product
When they left less than 2 years after starting it, virtually an empty office was left behind.

Along with Prateek and me, Priyanshu (now heads operations at Pesto) and Sumeet Bhaiya (who went on to create PepCoding) picked things up from scratch and started from 0 again.
Read 12 tweets
22 Jul
The last few years I have been at the intersection of tech, content, hustle culture, startups, creator economy and the move towards more indepent work.

A thread about the current state and the road ahead. 🧵👇🏼

(Might as well add a dystopian prophecy trigger warning)
Today if you look around people are making a lot of noise about a few things

- remote work, freelancing, independent work
- side hustles, personal growth, financial advice
- creator economy, social media, YT/Insta growth

Seems doing all this is both sexy + essential to survive
Here's what I want to break it down at - it is sexy because some people you have come to like are constantly hammering that thought down your head.

Reality is, it is becoming a way of life, and that is making surviving in the modern world an increasingly uphill battle.
Read 35 tweets
19 May
Are you an Android developer? iOS developer ? Or maybe you're into web ? Using React or Vue ? Or even Angular ?
Flutter, sure. React Native ? Come on over let's talk.

I have built/contributed to production apps using all above technologies. And here is a 🧵 👇
Small disclaimer: While I have worked with multiple mobile and web frontend frameworks, I have spent 10+ years on Android, and have written 2 very popular VueJS libraries. So maybe some of this can be biased towards that.
The first rule of frontend development: Do not get married to your framework.
The second rule of frontend development: Do not get married to your framework.

Zoom out a little bit. Most of frontend development is same, regardless of framework.
Read 25 tweets
11 May
When I repeatedly called out the fact that PM CARES fund is not under RTI, was not needed in the first place when PM Relief fund and National and State Disaster Relief Funds existed, I got chastised by relatives, friends, everyone for criticising a "positive effort"
Well so, fuck all of you who said that (I remember all of you).
But, gladly, this time around as I can see, no company/individual is promoting PM CARES anymore. Everyone is donating to GiveIndia and directly to Ketto/Milaap fundraisers, even frickin ISKON, but not PM CARES.
That says a lot doesn't it ? Even the hardcode bhakt celebrities are not donating to PM CARES anymore.

Guess this has completed the demonetisation cycle now I guess, when finally even the bhakts know associating with it is a net negative impact on image.
Read 4 tweets
12 Dec 20
In the industry, people are moving en-masse to Kotlin, Swift, TypeScript and Go. Like if you look around at product companies, 75~80% new things are written in these.

Yet we are still teaching Python/JS/C/Java to beginners. This is creating a bit of a problem here. Read on.
When I use `?:` or `?.let { } ` type of syntaxes in Kotlin it comes so naturally to me, because of my years spent in Java, understanding the null-safety problems, and the long chunks of code to work around them, that these 'feel' idiomatic.

For beginners, it is very different.
As someone who as been teaching programming and onboarding developers at bigger teams I see -

Those who have made websites in JS being put into large TS projects
Those who are still grasping Java being put into Kotlin projects (android or backend)
Php/Django folks starting Go
Read 6 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!

:(