Find Your Happy Place. Every company and every work group has their own culture. If you are considering starting a new job here are some good engineering/culture questions to ask a prospective employer.
Every company and every work group has their own culture. If you are considering starting a new job here are some good engineering/culture questions to ask a prospective employer. They can help you determine if you will fit in with prospective team. As I am a software quality engineer, the questions are somewhat focused in that area but I think they can be helpful to anyone considering a job in software.
These are questions you should ask during the interview process. While I do offer my opinion along with the questions, obviously it is up to you to decide how significant the questions and answers are for you.
The New Hire Experience
Even though you will go through the new hire experience only once when you join a new company, it can tell you a lot about the way the company operates. It is worth asking some questions about the new hire experience.
- When new members join your team, how long does it take to get their computer set up ?
- Who does the set up ?
- If the set up is done by an IT department, ask how responsive are they, ask are they local, do they use a ticketing systems and how many tickets you will have to file.
- If the set up will be done by you, ask where will you get instructions and help
- Can I install software on my computer or does it have to be done by IT ?
- Where will I be located in relationship to the rest of the team ?
- When someone joins your team, how do you bring them up to speed ?
- What short term goals or expectations do you have for a new hire ?
There are a couple areas I am probing with these questions. I'm trying to find out if the team and the hiring manager work reactively or proactively. How much thought and planning they have put into the new hire experience can be a strong indicator of how they conduct their day-to-day business. I'm also investigating their IT department. The more you rely on the IT department to do things, the more important it is to have an IT department with skilled, proactive, helpful people.
I worked at a place where I had to file over 10 tickets with the IT department to get my new computer set up and configured. It took over 2 weeks to get these tickets resolved. In my opinion, all of that should have been done before I joined the company. It was not a good new hire experience. I've since learned to ask the types of questions I've listed here.
The Build, Deploy, Test and Release Experience
If you are part of a team responsible for delivering software then you most likely want to know about how the software is built, deployed, tested and released. I've worked with a team where only certain people knew how to deploy a build. When those people were out or focused on other tasks the deployments were delayed. The best environment is when these tasks are automated. The next best is when everyone on the teams knows how to do all of them. Of course it is up to you and your prospective boss to determine what level of understanding you need to have, but this is another area where it is worthwhile to probe during the interview process. Here are some questions to consider asking.
- Walk me through your build, deploy, test and release process
- How often does your QA team get new builds to test ?
- Who does the builds and installs that QA will test ?
- Who does the builds that will be released ?
- How many test environments do you have ? How many QA people use them ?
- How does a QA person determine what is new in a build?
Lots of Agile shops will have a ticketing system for tracking tasks, stories, epics, bugs, and so on. They will also have a source code control system such as git, cvs, and svn. They may also have a code review tool and one or more IDEs used by product and test automation developers. You may want to ask questions about these and how well they are integrated. Does the ticketing system tie in with the source code control system ? Does the source code control system tie in with the code review tool ? Is there a source code control system plug-in for the IDE ?
Part of what a QA person does is track changes and the easier it is to track them, the less time you'll have to spend on this activity.
As I've already mentioned, the importance of these areas is subjective. If you can work and be happy with a 10 step manual deployment process that takes 45 minutes each time, fine for you. Regardless of what your criteria are for a work culture, I encourage you to identify which areas are important to you and do your investigate of them during the interview process. You'll increase your odds of ending up at a place and with a team that suits you.