Practice 47 Senior Software Engineer interview questions covering system design, architecture decisions, and technical leadership.
Question 2 of 47
Why the Interviewer Asks This Question
Example Answer
How to Answer
Community Answers

William Swansen has worked in the employment assistance realm since 2007. He is an author, job search strategist, and career advisor who helps individuals worldwide and in various professions to find their ideal careers.
An interviewer will ask you this question to determine your programming methodology and whether it matches that currently used by the organization. They also want to make sure you understand the differences between these two approaches. Finally, they may expect you to elaborate on the benefits and disadvantages of each programming approach.

William Swansen has worked in the employment assistance realm since 2007. He is an author, job search strategist, and career advisor who helps individuals worldwide and in various professions to find their ideal careers.
"While developing a software program as a monolithic app is more straightforward and easier, using the microservice approach has its advantages. These include isolating each service so they operate independently, robustly, and do not depend on each other. This results in a program that performs faster and is more efficient. The drawback is that it creates multiple points of failure involving each microservice. Given a choice, I would typically develop an application using the microservice approach, assuming that my team was familiar with this and that it was a common practice within my organization."

William Swansen has worked in the employment assistance realm since 2007. He is an author, job search strategist, and career advisor who helps individuals worldwide and in various professions to find their ideal careers.
As a senior software engineer, you normally have a great deal of autonomy and can choose how you approach application development. However, your choice must align with the talents and experience of your team as well as the common practices used by the organization you are working with. When preparing for an interview, you should research the organization, its software development group, and the specific job you're applying for. This will provide you with the information you need to answer questions like this in the context of the organization's current operations.

Interview Coach
Jaymie
A real coach, not AI. I read every answer myself and write back with personalized feedback.
Typically responds within 24 hours.
0 - Character Count
Anonymous Answer
It depends on the nature of the application and the clients' needs. A monolithic application can be created more quickly and requires less infrastructure than a set of microservices. However, a monolithic app is more difficult to scale horizontally and typically is scaled vertically. If the client's needs would not require a vertically scalable application, a monolithic approach would be fine. However, due to the shift in industry practices and the wide adoption of microservice architecture, I encourage a microservice approach.

Amanda's Feedback
You've provided a balanced answer that illustrates your ability to adapt your approach to best fit the needs of the client and industry trends. Consider enhancing this answer further by sharing an example of a time when you've effectively used a microservice approach and why. This shows the interviewer that you have experience utilizing the approach effectively.
Unlock expert responses to system design and leadership questions interviewers expect.
Get StartedJump to Question

Written by William Swansen
47 Questions & Answers • Senior Software Engineer

By William

By William