I fully acknowledge that I’ve had a lot of different jobs. I’ve had ample opportunity to experience a good variety of different work environments and employers. I’m also getting to the point in my career where I can be a little more choosy about where I work. This is a far-cry from the job hunt after college, where I almost cried having received a single offer (I didn’t know if I’d receive any, and I accepted right away). I have also been a team lead and manager, so that experience informs my view on some of these topics. This post lists the top three questions that I like to ask when I am applying for a job. There are some questions that are important but more basic, like, “do you provide free filtered or spring water?” that won’t be on this list because they are simple and the answer is very clear. I also think it is important to most people that a company provide free drinking water, so there’s not much to talk about. Believe it or not, I have heard of companies not offering this “benefit”.
When I am applying, it is common for me to ask many more questions than I am asked. I like to think this is because my resume, answers to technical questions, and answers regarding my experience and behavior are that clear and informative. Limiting the number of topics or questions I’m listing to three is difficult, but doable by focusing on the things most important to me. Here are the three things that are most important to me right now:
- “Interesting” work
- A collegial team
I consider myself a family-first kind of person. I do have children, and I need to be able to take sick-days if they are sick, run errands like taking them to regular health checkups, and I want to be able to attend their school functions. While it is illegal for employers to ask you if you have children, I always mention that I do. I don’t recommend this for other people. For me, I want to give employers the opportunity to illegally discriminate against me (because of my parental status). I am a very practical person and I assume that if they would not hire me becase I am a parent, that I would not want to work there. Here’s my question:
When your child has an event at school, such as a class party, a special mother-daughter event, or something like a field day, is it easy for you to miss work and attend? Would you use PTO or make up the hours? Can you tell me about a time when your manager made you feel like she respected your work and time?
This type of question can be asked in many different ways, but there are key points to tease out. For people on your team, or in a similar position, is it frowned upon to take off in the middle of the day? If you do take off are you forced to use PTO? Can you just make up the hours? This question is particularly relevant for those of us who are expected to be loosely on call on evenings and weekends anyway. There are managers who expect you respond to late night, unscheduled calls, but balk at short, scheduled errands run in the middle of the day. Finally, is time with your family something that is given begrudgingly, or do people really care about their own families and yours?
People without children might argue that there is incidental discrimination against them because they don’t have the same opportunties to flex time. I’d say, why not? A person should be able to flex time to do something important to them. Unfortunately, not all managers would agree, and that’s why you have to ask the right questions.
I tend to avoid positions working on well-established products with only minor feature additions. I enjoy working on major new features, tricky bugs, and technical challenges. I’ve worked on these types of products and at some point the features become things like:
- Change the marketing text in the alpha quadrant
- Make the button red instead of blue
- Adjust the timeout from 60 to 120 seconds
having completed all of these tasks quickly, I am left with no specific tasks to work on, and enter a period of what some would call yak-shaving where I do useful but ultimately not asked-for work:
- Mock the 3rd party API for unit testing and QA
- Reduce integration test time by 50%
- Add static code analysis and related reporting to the CI pipeline
While initially interesting, creating and working on my own pet tasks for a project starts to lose its appeal for me after a couple months.
My question seeks to find out whether the position will be like this:
Will I be working on a single product? If so, how often does the product have major new features? How often do you rework the product? How long on average does a team member stay to work on this product? What are some interesting technical challenges that you’ve had with this product in the past month? What about the past year?
People may have left the team to work on other, more interesting projects. The product may be winding down, so there may be limited new work on it. Maybe the product has no users, so there have been very few bug reports.
A collegial team
I’ve worked loosely solo, doing my own requirements gathering and full-stack development; on a team, partially solo, but with shared responsibilitiesl; and as part of a team, working on the same product, work split by features. I don’t have a strong preference in terms of work, but I think I can contribute more to an organization the more I work with others, so that’s the type of position I gravitate towards.
I want to work with a team that shows respect to each other, that is proud of their work, and that seeks to improve. This question tries to determine how closely the team matches that desire.
Has there ever been a time when one team member had a conflict with another team member? How was it resolved? How does the team communicate? How does the team share knowledge? How would you characterize the team dynamic? Can you tell me about a time when there was a problem with the product, and the team worked together to resolve it? How does the team do continuing education? How does the team and its members receive feedback?
Many interviewers wouldn’t answer something directly about disrespect within the team (even though they would expect you to be candid), so using the ambiguous conflict will help. Sometimes the team does not use group chat to communicate (my preferred method of team communication), instead communicating mostly one-on-one. Sometimes they all sit around the same table and will talk aloud as needed. Teams may be split into two factions by geography and although the team is logically one team, it is really two teams. Do the members of the team learn together? How do they share knowledge? If I do something wrong, will my coworkers be comfortable telling me? Do the senior team members and architects feel unassailable (in terms of their ideas)?
These are questions I ask based on what is important to me. They may have no value for you depending on your priorities, your career goals, or your experiences so far. I think that senior engineers should be more critical of their prospective employers and treat interviews as a two-way street.