Sign in
Log inSign up

Random interviewing tips for junior software engineers

Sébastien Portebois's photo
Sébastien Portebois
·Jan 6, 2022·

6 min read

I was a lucky auditor of Twitter Spaces discussion yesterday, brilliantly hosted by @TheTechRally and @genericmikechen. My attention was caught by a few questions. Because it's hard (or impossible) to cover everything live, I'd like to come back and bring what I believe are some important  -  especially from a junior developer standpoint  -  answers we didn't have a chance to hear.

The questions

I'm no longer learning anything in my current small company, should I stay or move to a big company to learn more things with more senior people?

Which questions should I ask during the interview?

A startup vs big company myth

First things first, let's debunk a myth when we compare SME, startups, and big techs: there's no a one size fits all answer. The question came with the implicit assumption that he had to move to a large company to be able to learn something.

If you're stuck, moving is a very valid question. But don't confuse company size and team opportunities, these are very different things.

You could find great opportunities for growth and for learning new skills in any of these, as you could end up in bad teams in any of these.

Learning about the company is important. But it's even more important to learn about the team your current interview is focused on.

The key idea is that the team you'll join matters more than the company.

Interesting things to talk about during the interview

So it now comes down to: how can we know if the team you're interviewing with offers such opportunities to learn and grow. And which questions should I ask during the interview?

During the discussion, I was really surprised that management was never mentioned in the answers to these questions.

I heard many good things about the skills, the salary, and these are important points. Don't forget to also consider a few other critical aspects when you have opportunities to ask questions:

  • discover the team mindset and culture
  • learn more about the current management of the team
  • let them discover your mindset through your questions

Team culture and how good is the current management for your growth if you join is critical, and can be good or awful, no matter if it's a big tech company or a new startup or any other place.

Especially as a junior, it's very difficult to assess if a manager is a good one or not. So many managers in tech are former engineers who were promoted to management positions, but never trained for this. Most of them are doing their best, yet they are not great managers (and many are not even good managers). And this does matter a lot, because your manager will be your first ally to help you grow. It took me many years before I discovered what a good manager could be, and realized, very late, that previous managers did their best but weren't professionally trained for that.

On the other side of the team culture, don't assume that you can take for granted that because a department has many senior profiles, you will be able to learn a lot from them. Hopefully, it's the case, but the department could be organized with junior teams, and dedicate the senior resources to more complicated stuff.

Key idea: ask questions about how the manager help the team grow. Do they have training paths, monitor skill growth and follow-up with junior developers in the team to make progress with their skills. Ask which kind of interactions with more senior developers you should expect. If there's any buddy or mentoring process in place.

The answers to these questions will give you data points about the real opportunities you'll have to blossom if you join this team.

And these questions also expose your mindset. Let's talk about this a little bit, because I was so surprised this was not in the answers.

When we hire a junior, we obviously don't expect them to master a lot of skills. Even for seniors, we know that the tech we use today will change and they'll have to learn new things on the job over time.

So what are we looking for when we interview people for junior positions? When I do technical interviews, there are a few key elements I'm looking for, and all of them are related to the mindset and the attitude:

  • does the candidate demonstrate some ownership and rigour. This doesn't require any past experience, any small personal project or experience in another domain could demonstrate it. But these are key values in our teams
  • what is the potential for growth? Is the candidate just looking for a job to get a paycheck and not make any progress, or are they eager to learn more, and could become the next senior and beyond. We don't hire juniors to keep them juniors. Some of them demonstrate huge growth. Some stagnate. We'd rather hire someone with limited skills we believe will grow a lot, than another with a few more skills, but who doesn't demonstrate such potential.

When you think about the questions you'd like to ask the interviewer, don't forget to also put yourself in their shoes.

When your questions give you data points and also give valuable information to the interviewer, it makes you stand out from the rest of the crowd.

Story time: 2 years ago, I hired a junior front-end engineer, the guy had close to 0 experience (very small open source contributions). But he was a former CFO and changed domain. Yet the skills he got from his past experience made him stand out. How to communicate clearly, demonstrate how rigorous his approach was. Before the interview was done, I knew we needed him in the team. We hired him and never looked back! Your skills from other domains, schools projects or whatnot, ar assets. Don’t underestimate them!

I was really happy with this first Twitter Space experience, but such live discussion always comes with the drawback that we cannot cover everything… and people how missed the session don't have a chance to learn from it. I hope this complementary post could help someone, somewhere.

Please keep in mind that the job market is different depending on the domain, the country, etc. I strongly believe the attitude, mindset and management situation are very generic, but YMMV.

Key takeaways

Let’s wrap up. The main idea I’m trying to bring here, from a junior standpoint, is not to be picky about your future team or your future manager. It’s 2 things:

  • You’re very focused on your skill acquisition, and that’s normal, but be aware and keep in mind that the interviewers are also trying to evaluate your soft skills, attitude and mindset. Evaluating your skills is easier with some coding tests. Evaluating these other parts is still very tricky and fuzzy. It’s your chance to stand out and shine. Use your time with them to demonstrate ownership, professional attitude.
  • You need this job. But try to keep your critical thinking switch turned on. Evaluate the team, the manager. Even if you don’t have other choices, at least you’ll have fewer disillusions. And after some time, the experience you’ll get there will help you get a better position.

What the job market will look like for juniors in the years to come

Heather Miller gave a great keynote about open source, the job market and the growing need for juniors. Companies might not realize it yet, but they will hire more and more junior developers, because they won’t have the choice. If you’re curious about all the data and trends to back these statements, I hope you’ll enjoy her keynote as much as I did: