Skip to content
This repository was archived by the owner on Jan 3, 2024. It is now read-only.

Domysee/SoftwareDevelopmentInterviewQuestions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 

Repository files navigation

This is a cureated collection of interview questions an interviewee can ask the interviewer about the company

Asking questions is not only important for the interviewer, but for the potential employee too. As a software developer, you will most likely get multiple offers. Having asked the right questions during the interviews, will remove a lot of the guesswork when choosing the company.

This list aims to provide a list of questions that could be important to you, and hence make your decision between multiple potential employers easier.
If you come to the interview with a written list of questions, and take note on the answers, you can make sure you don't forget anything important, and you remember their answers as well!

Collaboration

How do you handle a conflict between developers? E.g. if one proposed one solution, and the other a different one, and both don't back down.

How do your teams work together? Which tools are you using?

How do you organize teams?
Do you have vertical teams (designers, developers, ... together), or do you have horizontal teams (one team consists of only developers, the other only of designers ...)?
How many people are usually in a team?

How do people collaborate? On the same position (e.g. several developers), or on different positions (e.g. developers and QA's).

How/when do developers talk to non-developers? Is it easy to talk to the people who are will be using your product?

How does internal communication work?

How does the company help junior people to grow?

Communication

How do you communicate with customers? Who does that?
How do you collect customer requirements?
How do you work with customer feedback?

Do you have an issue tracker?
To what extent do you use it?

What project management framework do you use? Scrum? Kanban? Extreme Programming? Something else?

How often do you have meetings? Are there any scheduled/standing meetings?

Planning

How do you handle errors in planning?
E.g. if there were some features planned, and now you realize that more time is needed to implement them. Do the developers have to work overtime? Do you cut the scope? Do you simply take more time?

How do you prioritize tasks?

Technical

How much do you value testing?
What is your opinion on testing?
How much do you test your code?

How do you make sure your product works as expected?

What tooling do you use in the development workflow?

Which technologies do you use throughout the company?
What technology stack do you use? Why did you pick this one over similar ones?
These questions may sound similar, but depending on the company, can be really different. In a big company, the interviewer may not even know which technologies are used in all projects througout the company.

Do you automate tedious developer tasks?
How do you value automation?
E.g. continuous integration, continuous delivery, testing, ...

How and when do you fix bugs?
Do you fix them before adding new features?

How do you value development speed vs quality?

How would you describe code quality of your product?

How do you ensure high code quality?
This will tell you about their processes, if they use testing, code reviews.

How do you take care of technical debt?

How does your release process look like?

Describe your deployment process – how do you find bugs in your team’s code? What recourse do you have when you find a serious bug in production code?
Who is responsible for doing deployment? How often do you deploy?

Onboarding

How long does it typically take before a new hire (like me) brings value to the team? This question clarifies a bit what is expected of you when you join the team.

What does your onboarding process look like?

What are your expectations of me in 3 months? In a year? This question shows if the company is prepared to hire people at all. The company should know how to use the new hires. Do they have an onboarding plan, for example? A list of responsibilities?

Working there

What's the general working process? Can you describe one day or one week of the team's work?

What am I going to work on?

Who makes business decisions?

Who makes technical decisions?
These decision-making questions are becoming more and more important the more senior you become. As a lead developer, you wouldn't want to have no power over decision-making - why would they want to hire you at all then?
Generally speaking, if all decisions are made by one person, it's probably not the best. On the other hand, if all decisions are always made by everyone, what is going to happen if people disagree? Better to clear this up.

Is it possible to work from home, say, 1 or 2 days a week? Does anyone do this?

What level of autonomy am I going to have? What decisions am I allowed to make?

How do you assess people's performance?

What do you do leading up to a vacation?

Is variability tolerated or is everyone expected to be on the same schedule?

Would I need to be on call? How often?

Culture

What are company values?

Which company internal information is accessible to employees?
Financials, ongoing deals, code (all code written by the company or just what you are working on), salaries, ...

What's the average lunch like here?

When something goes wrong, how do you handle it? Do devs get shamed for breaking the build?

Is it a challenging environment?
Or, if they say "we like to challenge each other", what does it mean?
Try to dig deeper: is it a healthy challenging and respectful discussions aimed at improvement of the product and the process? Examples may be: "is it the best for the team right now", "is this what our customers want", "how can we improve the process".
Maybe they mean only technical challenges: "how do we scale this better", "how many requests can we process", or "how to make it work faster on smartphones".
But sometimes "challenging" can mean there are people who are constantly going to question your professionalism and make you feel bad. "Your code is so bad" or "your designs are ugly" are some gruesome examples.

Do people work overtime? How often? For what reasons? Is it paid?
In these answers watch out for toxic culture! "We are one big family" may sound heart-warming, but in reality you have your own family, hobbies, and other commitments outside of work. Don't give them up for a job!

How many hours do people work in an average week? In your busiest weeks?
How often are there emergencies or times when people have to work extra hours?
Do people work on weekends?

How is the work-life balance?
Do you ensure the work-life balance of employees? How?

Big Picture

What are your main competitors? How do you compare to them? Which advantages and disadvantages does your product have?

Who are your customers? Here you are not looking for specific names, but specific groups (e.g. enterprise, individuals).

How do you define and measure success?

What are your long-term plans?

How do you, as a company/team, make sure you're working on the right things?

Are you profitable?
If not, how does this affect what you can do? What’s your planned timeline for becoming profitable?

Salary

What is the salary range for this position? Bonuses, stock options, relocation packages, signing bonuses, vacation days, etc.

Career Development

How are the salaries of developers raised?

What are my professional perspectives? Career and compensation ones?

Does your company support continuing education? How?
There are multiple ways they can do that, either by supporting going back to university, paying for MOOCs (e.g. Udacity, Coursera), buying books, education subscriptions, ...

In what other ways do you support career development?

Community Involvement

Do you contribute to open source projects? Which projects? Which teams work on open source? Do you work mostly in the community or do you have a private fork?

Do your employees speak at conferences about your work?

Are employees encouraged to go speak at conferences?

Do you cover travel to conferences? How many conferences a year do devs typically go to?

Diversity

How diverse is your team? Do you have a diversity commitment? The importance of the question varies depending on which group you belong to.
But do ask this question if you belong to the majority as well. You will help the minorities by doing so. Also you will help companies to start thinking in the right direction. A well-balanced team will benefit everyone: the business, the team, the majorities and the minorities.

Miscellaneous

How long do your developers typically stay at the company?
With this question you can gauge developer satisfaction. The longer they stay, the better.

Why did you invite me to the interview?
This question is quite powerful because it makes the interviewer think about the good things of you, and so he'll have an easier time remembering them when it comes to decision making.

Which aspects of a developer do you value higher than other companies?
This is a question that replaces the generic ones like What soft-skills are you looking for? or How would an ideal candidate look like?. Those questions will most likely generate the default answers, like driven, dedicated, motivated, sociable.
Asking about differences to other companies reveals how you can stand out.

Looking backwards, what mistakes did you make as a company/department/team, and what did you learn from them? This one may seem a bit too invasive, but you'll learn a lot about the company and about the interviewer as well. It's even more valuable if you're going to work with them or report to them.

If you had authority, what one thing you would change here?

Can you give me an example of someone who’s been in a technical role at your company for a long time, and how their responsibilities and role have changed?

Can you tell me about a time when you’ve had to let someone go?

How is the office space physically organized?
Open office, cubicles, private offices?

What do you wish you had known when you joined this company?

Why did you choose to join this company?

What's the single biggest issue or problem facing the team/department/company?” What's currently being done to address it?

When You Think of the Best Employees Who've Worked for You, What Makes Them Stand Out in Your Mind?
Ask this your boss, if he's the one interviewing you. This can give you good knowledge of what is expected.

Contributions

Thank you Elena for writing this wonderful blogpost on the topic, from which many questions were adopted.

Further Resources

Culture Queries
Tech Interview Handbook

https://github.com/viraptor/reverse-interview

About

Questions a developer can ask in a job interview

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published