DEV Community

Tapas Pal
Tapas Pal

Posted on

Interview Q & A Non-technical

Q1. How do you handle disagreements during design discussions?
Answer:
I focus on technical facts, business requirements, and measurable outcomes rather than personal preferences. I encourage open discussion, present pros and cons of each approach, and support decisions with data, architecture principles, and operational considerations. If needed, I build a proof of concept to validate assumptions before making a final recommendation.

Q2.Have you participated in system design reviews?
Answer:
Yes. I regularly participate in design reviews where we discuss service boundaries, API contracts, database design, security requirements, deployment strategies, scalability concerns, and integration patterns. My role is to identify risks, suggest improvements, and ensure the design aligns with architectural standards and best practices.

Q3. How do you actively participate in architectural and design discussions?
I actively participate by understanding both the business requirements and technical constraints before proposing solutions. During design discussions, I evaluate different approaches, identify trade-offs, consider scalability, security, performance, maintainability, and operational impacts. I collaborate with architects, product owners, QA teams, and other developers to ensure the proposed solution aligns with the existing architecture and long-term business goals

Q4. Can you give an example of an architectural decision you influenced?
In a previous project, a service was making multiple synchronous calls to downstream systems, causing high latency and occasional timeouts. During architecture discussions, I proposed moving to an event-driven approach using Kafka for non-critical processing. We analyzed the trade-offs, updated the design, and implemented asynchronous communication. This reduced API response times significantly and improved system resilience during peak traffic.

(STAR Format)

Situation:
Our order-processing system was experiencing performance issues during peak traffic.

Task:
We needed to improve response times without redesigning the entire platform.

Action:
I analyzed the architecture and identified that synchronous communication with downstream services was causing bottlenecks. Since Kafka was already part of the ecosystem, I proposed an event-driven approach where requests were published to Kafka and processed asynchronously. I documented trade-offs, reviewed the design with architects and stakeholders, and led the implementation.

Result:
API response times decreased from several seconds to under 500 milliseconds, throughput increased significantly, and the solution was implemented without major architectural changes.
-----------------------------------------------------------------

What is Kanban in Agile?

Kanban is an Agile methodology focused on visualizing work, limiting work in progress (WIP), and continuously improving the flow of work.
Unlike Scrum, Kanban does not require fixed-length sprints. Work items are pulled through the system continuously.

When Kanban is Preferred
Kanban works well for:

  • Support Teams
  • Production Issues
  • Bug Fixes
  • Urgent Requests

Work arrives unpredictably.
-----------------------------------------------------------------

Conduct code reviews and ensure adherence to best practices and coding standards
Interviewers want to know:

  • How you perform code reviews
  • What you look for
  • How you provide feedback
  • How you maintain coding standards
  • How you mentor developers

How do you conduct code reviews and ensure adherence to best practices and coding standards?
I treat code reviews as an opportunity to improve code quality, maintainability, security, and team knowledge sharing. During reviews, I focus on correctness, readability, performance, security, test coverage, adherence to coding standards, and alignment with the overall architecture. I provide constructive feedback, explain the reasoning behind my suggestions, and encourage discussions rather than simply approving or rejecting changes. I also ensure that the code follows SOLID principles, clean code practices, and established team guidelines.

What Do You Look For During Code Reviews?

  1. Code Correctness
  2. Readability
  3. SOLID Principles
  4. Performance
  5. Exception Handling
  6. Security
  7. Test Coverage

What coding standards do you enforce?

  • Meaningful naming conventions
  • Constructor injection
  • SOLID principles
  • Clean Code practices
  • Proper exception handling
  • Logging standards
  • Unit test coverage
  • Security best practices
  • Consistent formatting
  • Avoidance of code duplication

What would you do if a developer disagrees with your review comments?
I would discuss the concern openly and focus on the technical reasoning rather than personal preferences. If there are multiple valid approaches, I would evaluate them based on maintainability, performance, consistency, and team standards. If necessary, I would involve the team or architect to reach a consensus.

--------------------------------------------------------------

Work collaboratively with other teams to ensure seamless integration of software components

  • How you collaborate across teams
  • Communication skills
  • Integration experience
  • Handling dependencies
  • Working in Agile environments
  • Leadership and stakeholder management

I work closely with product owners, architects, QA teams, DevOps engineers, and other development teams from the early stages of a project. I participate in design discussions, define clear API contracts, identify dependencies, and ensure integration requirements are understood by all parties. I also use regular communication channels such as Agile ceremonies, technical workshops, and integration testing sessions to proactively address issues before deployment.

2. Can you give an example of a cross-team integration project?
Sample Answer (STAR)
We were developing an order processing platform that required integration between the Order, Payment, and Customer services owned by different teams.

Task
Ensure all services integrated correctly and met business requirements.

Action
I coordinated API contract discussions, documented integration requirements, defined error-handling strategies, and worked with QA teams to create end-to-end test scenarios. We also established regular integration checkpoints during development.

Result
The integration was completed successfully with minimal defects, and the solution was deployed without impacting existing services.

3. How do you manage dependencies between teams?
I identify dependencies early during backlog refinement, sprint planning, or PI planning sessions. I work with other teams to agree on delivery timelines, API contracts, and testing strategies. I also track dependencies throughout the sprint and communicate any risks or delays proactively to avoid surprises late in the delivery cycle.

4. What do you do when another team's API is not ready?
Strong Answer

I try to avoid blocking development by using mocks, stubs, or contract-based development. For example, if the API specification is available, we can create mock services using tools such as WireMock and continue development while waiting for the actual implementation.

Example:

Order Service
      |
Mock Payment Service
Enter fullscreen mode Exit fullscreen mode

This reduces dependency-related delays.
5. How do you ensure API integrations are successful?
Answer

I focus on:

  • Clear API contracts
  • OpenAPI/Swagger documentation
  • Contract testing
  • Error handling
  • Versioning strategy
  • Integration testing

Example:

Order Service
      |
REST API Contract
      |
Payment Service
Enter fullscreen mode Exit fullscreen mode

Both teams agree on request and response formats before development begins.

6. Have you participated in Three Amigos sessions?
Yes. I regularly participate in Three Amigos sessions involving Product Owners, Developers, and QA engineers. These discussions help clarify requirements, identify edge cases, define acceptance criteria, and ensure that integration requirements are understood before development begins.

7. How do you handle integration issues discovered late in testing?
First, I work with the relevant teams to quickly identify the root cause. Then I assess the impact, communicate the issue to stakeholders, and agree on a resolution plan. I also review why the issue was not detected earlier and improve testing, contract validation, or communication processes to prevent similar problems in the future.

Top comments (0)