Software Engineer Interview Questions
Go Back1. Can you describe how you would implement linear search in JavaScript?
2. What methodologies do you use to ensure that your program will scale?
3. Can you describe what you know about object-oriented programming?
4. Which design patterns do you use, and in what situations do you use them?
5. In your opinion, what is the difference between computer software and a computer program?
6. How would you go about explaining cloud computing to someone that doesn't have a technical background?
7. What personal software development projects have you worked on outside of work?
8. Can you describe a tough software development problem you encountered in your last job and discuss how you solved it?
9. Which do you prefer - a micro-service approach or a monolithic app?
10. How would you accelerate the response time of a website you created?
11. Can you define black box testing and white box testing and discuss the differences between them?
12. Walk me through the steps to build a single page application with multiple sections using the programming framework in which you typically work.
13. How do you go about organizing CSS files, and why do you prefer this approach?
14. What are the functions of web workers in HTML5?
15. What are the differences between blocking and non-blocking calls in the context of Node.js?
16. What are some of the programming languages you are familiar with, and which ones do you prefer?
17. How would you implement Dijkstra's Shortest Path using a programming language with which you are familiar?
18. What are the differences between an array and a stack?
19. Please describe a stack and the two operations it performs.
20. What process do you use to test and find bugs in an application you've developed?
21. Please describe responsive design and the difference between fixed and fluid layouts.
22. How experienced are you with the Agile software development process?
23. Can you describe the complete software development life cycle?
24. How do you go about addressing errors in your code?
25. Describe the process you use to create a program, from requirements definition to delivery.
26. Walk me through your process for designing scalable applications.
27. What do you feel are the critical principles of good software engineering?
28. What do you look for or check when reviewing another team member's code?
29. In your opinion, what distinguishes a great software engineer from an average one?
30. What portion of your day involves coding, and what are the other activities you perform when not coding?