← Fidelity Interview Insights

Fidelity·Software Engineer·Technical Phone Screen·Intermediate

Intermediate
Jun 2026

Summary

Technical phone screen for a software engineer role at Fidelity, pretty much a single deep-dive question on Spring vs Spring Boot. Not a lot of small talk, they just wanted to see how well you understood the framework ecosystem.

Questions Asked (1)

Q1

What are the key differences between Spring Framework and Spring Boot? Walk through things like configuration, auto-configuration, embedded servers, opinionated defaults, dependency management, startup behavior, and when you'd use one over the other.

Technical Trade-offsSystem DesignAPI & Integrations
Author's notes

This question is broader than it looks.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by defining Spring Framework as the foundational IoC/DI container and Spring Boot as an opinionated layer that simplifies Spring application development. Then systematically compare configuration, auto-configuration, embedded servers, dependency management, and startup behavior, using concrete examples. Finally, discuss when to choose each based on project requirements and constraints.

Pro tip: Emphasize that Spring Boot is not a replacement for Spring Framework but builds on it, and mention that understanding the underlying Spring mechanisms is crucial for debugging and customizing Boot applications. Relate this to real-world scenarios like microservices vs. legacy enterprise apps.

1. Define Core Concepts

Briefly define Spring Framework as a comprehensive programming and configuration model for Java applications, and Spring Boot as an opinionated extension that simplifies bootstrapping and development.

2. Compare Configuration and Auto-configuration

Contrast manual XML/Java-based configuration in Spring with Spring Boot's auto-configuration, which automatically configures beans based on classpath dependencies and sensible defaults.

3. Discuss Embedded Servers and Startup

Explain that Spring Boot includes embedded servers (Tomcat, Jetty, Undertow) for standalone applications, while Spring requires external server setup. Mention how this affects startup and deployment.

4. Highlight Dependency Management and Opinionated Defaults

Describe Spring Boot's starter POMs that simplify dependency management and its opinionated defaults (e.g., application.properties) that reduce boilerplate, versus Spring's flexibility requiring manual dependency resolution.

5. Choose the Right Tool

Provide guidance on when to use Spring Framework (e.g., legacy systems, fine-grained control) versus Spring Boot (e.g., microservices, rapid development), tying back to trade-offs.

Key Points to Mention

  • Spring Framework provides core IoC/DI and requires explicit configuration (XML, annotations, or Java config).
  • Spring Boot offers auto-configuration that automatically sets up beans based on dependencies and properties.
  • Spring Boot includes embedded servers (Tomcat, Jetty, Undertow) enabling standalone JARs, while Spring typically requires WAR deployment to an external server.
  • Spring Boot uses starter dependencies (e.g., spring-boot-starter-web) to simplify dependency management and version alignment.
  • Spring Boot's opinionated defaults (e.g., application.properties, Actuator) speed up development but can be overridden.
  • Use Spring Boot for microservices, rapid prototyping, and cloud-native apps; use Spring Framework for legacy systems or when full control over configuration is needed.

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.