So, you’re looking for a developer/any other tech job. How do you ensure that the vacancy and the company suit you maximally? The first thing you should remember: don't be shy to ask questions. Jointly with the Relocateme.eu, the team of relocation and tech recruiting enthusiasts, we created a compelling list of the useful things to find out during the hiring process for your next job.
1) What languages/frameworks/libraries are used on the project?
This question needs no explanations — you need to know what you're going to work with.
2) What is the project’s architecture?
Is it a monolithic or a microservice app? What patterns does it implement?
3) How soon is the code from a repository deployed to production?
Is the project a self-hosted solution, or does it use cloud technologies? Does the team employ the CI/CD practices? Are container technologies used in the project? Do the team members review each other’s code before deployment?
4) What are the other significant tech details the candidate needs to know?
Find out as much as you can about the databases, APIs, build tools, IDEs, version control systems, etc.
5) Who maintains the project’s documentation? How often is it updated?
You need to know whether writing and maintaining the project’s documentation will be among your direct responsibilities.
6) How is the code tested?
Is it a Unit, Integration, Regression, or A/B testing, or some other type? Who is responsible for writing tests? Which amount of code is now covered by tests? What bug trackers are used?
7) Who is responsible for force majeure situations?
What if the server failover happens in the middle of the night? Who will be responsible for fixing the issue? Does the project have on-call rotations?
8) What are the key details of the project?
What problem(s) does the application solve? What are the project’s short-term and long-term goals? Is the project raising investments, or is it planning to do so? How does this solution differ from the competitors'?
9) What methodology does the project use — Agile, Waterfall, Scrum, Kanban?
Sometimes there are several methodologies utilized. However, it’s important to know what will be your entry point and what is the present developmental stage of the project.
10) How much is development vs. maintenance?
Your interest in the project directly depends on this, right?
11) How large is the team? What is its structure?
Do you prefer working on a big team with a complicated structure, or are you a perfect individual contributor? To avoid further frustrations, learn as much as you can about the team’s size, structure, the number of foreigners, etc.
12) To whom will I report?
Or, maybe, you will be reported to?
13) Is there room for growth?
Are there any career advancement opportunities for this position? Is there a job rotation program?
14) Does your company encourage education for this position?
Are there any workshops or hackathons planned within the company? Will the education, (conferences, courses, training), outside of the company be encouraged and paid for? Will you have a mentor, or will you have to mentor somebody else?
15) What is the working schedule?
How flexible is the schedule? Is it possible to work from home? Do employees on this project work overtime? If so, is overtime paid? Does the position entail business trips? If yes, how often will they take place and what will be the destination(s)?
16) Is the team friendly?
Are there any corporate events? How often do they take place? How are the conflicts within the team usually resolved?
17) How many stages will be there in the interview process? How will it proceed?
To be prepared, you should know all the stages of the hiring process and their average duration. Moreover, don’t forget to ask who will be interviewing you at each stage of the process.
The technical interview deserves special attention. Will it be a Skype call or a personal meeting? Will you have to write code or answer technical questions? If it’s a job involving relocation, will the company cover flight and living expenses for the final meeting at the office?
Note: Jobs with relocation need a much broader list of important questions. Here is the list of the relocation-related things your recruiter should tell you about.
18) What does a test task look like?
Knowing the specifics of the test task, you will be able to prepare for it. Specify also how much time it will take to perform, or whether you will be limited in time.
19) What is the salary range for this job? How flexible is the salary?
Specify the salary range and how often it will be reviewed.
20) Can I talk to some of the team members personally?
The recruiter's answer and reaction will show you whether all they've told you about the company was the truth.
Remember that forewarned is forearmed, and don't be shy to ask a lot of questions while looking for a tech job. What other questions do you usually ask before accepting the job offer? Please write them in the comments. :-)