I don't know about you, but every time I get to the final round of interviews at a company I get pretty nervous. It feels like I could get asked any question under the sun, and how do you prepare for something like that?! I've often compared studying for the final round of interviews to studying for a history test where you don't know the time period or region of the world.
While I tend to focus on worrying about the technical questions, in my experience that only comprises about 30% of the questions (this guesstimated statistic may be in part due to me being relatively early on in my career). As I recently went through a couple of rounds of interviews, I thought I would share some of the non-technical questions I was asked.
Note: I've shared some of the ways I've answered these questions, but they may not be the best possible answers. Just wanted to share what I can!
I love this question because I love working with Product. I love discussing the user needs and what the market is looking for. Chances are this question is going to be asked to you by a member of the Product Team, so focus on some of your positive experiences and leave the comments about how they always make you do work you don't want to do for your diary.
This was a question that I found out after the fact is very common. At the time I kind of panicked. What do I tell them - Twitter?? That dumb game I always play? Why can't I remember any of my apps?? The answer I ended up giving was the Clarity money app because I did think it was a pretty cool app, but unfortunately it wasn't one of the apps I used the most. In hindsight, I wish I would have picked an app I was more familiar with so I could have had better answers for the follow-up questions.
Answers to this question could get pretty complex and interesting depending on the app you've selected and your interest/understanding in product decisions. A couple of ideas that would fit many apps would include adding badges, notifications (be prepared for a follow-up question on how often), adding a gamification feature, or giving some sort of positive feedback for each use.
Put some thought in ahead of time to what doesn't seem intuitive or smooth about the functionality of the app. If it's a beautiful app that runs perfectly, you can dissect why it runs so great and how they achieved that.
If you have worked in one, be prepared to discuss which kind (Scrum, Kanban, etc.) and what that looked like for your team. Did you do full ceremonies (standup, sprint planning, retros, etc.), or was your team leaner on meetings? If you haven't worked in an agile environment, this article goes through the history of Agile and an overview of the various frameworks.
For me, I love the structure of Scrum. I love having a sprint to get my work done and I love the feeling of a fresh start with each new sprint. I like that we aren't stuck to what was originally outlined and there is room to adjust as we need to. It's also fun to ship work every sprint (in theory) and get the rush of endorphins you feel when you see your code in production!
Tricky question... what if you say none and they have 10? I've given a kind of circular answer to this one in the past. I enjoy meetings because, as a more junior engineer, I feel like I learn a lot from my teammates in meetings. However, if there are too many it becomes hard to focus on my actual work, so I prefer to have my meetings grouped and have longer stretches of heads down time.
This is such a classic question, I've probably been asked it in almost every job interview I've ever had, regardless of industry. In a recent interview, I talked about the push and pull between being a perfectionist and just getting something shipped. It's a disagreement I've seen happen often in development, and I know I tend to lean slightly towards getting code out the door. Not that I don't want the code to be awesome, and I definitely don't want to create tech debt, but I don't want to get so in the weeds on a perfect solution that we turn a 5 point ticket into a 21 point ticket. Your answer also might depend on if a product person is asking you or a fellow developer.
I struggled to answer this question because I couldn't (and still can't) think of a great example. Of all of the struggles I've had as a developer, I don't think miscommunication has been a common one. When asked this question, I redirected to a story about disagreeing with a coworker and finding a way to compromise. Maybe you can think of a better answer.
Tell me about a time you didn't get a ticket across the line in time. Why did this happen and how did you deal with it?
I've been asked this question a few times, and honestly, I'd also be interested to hear how an organization deals with developers not getting their tickets across the line (maybe a good follow-up question to ask as the interviewee?). Fortunately, I've only worked on teams where, as long as they know you are putting in the work, there's no shame in a ticket slipping. It's always been more of a personal pride thing for me to push my tickets to prod in time.
Great question! I love to be asked this question because it shows that the team has a learning and growth mindset (which I think all dev teams should). Personally, I learn by reading, doing, and then sharing what I've learned with others.
Twitter? Haha... no but seriously. I have told many folks that Twitter is one way that I keep track of what is going on in the wide world of tech. I follow a lot of folks who create amazing content that I learn from, and whenever I ask for help I'm flooded with amazing resources. I also throw out some of my favorite podcasts (shout out to Ladybug, Front End Happy Hour and Syntax).
Good luck out there on your interviews! Don't forget to ask for more money :)