Log inBook a Demo
Assessment
Intermediate

Back-End Engineer (Java Spring Boot): refactor legacy code

Time available:1 hour
|
Available in
+8
ByAnthropos
This simulation was archived and cannot be started
1
The challenge

A critical service file in the customer management system is causing operational risks.

2
The issue

Dependency injection flaws and unfinished business logic threaten system reliability and scalability.

★
Your goal

Refactor the code, implement missing logic, and ensure best practices are followed.

Your Role

Software Engineer - Java Spring Boot@ TechNova Solutions

You are a Software Engineer at TechNova Solutions, a cloud-based enterprise technology provider.

Other participants

Evelyn CarterTechnical Lead - Cloud Backend

Context

TechNova Solutions is a mid-sized technology company specializing in cloud-based customer management systems for enterprise clients. With over 1,200 global clients, including Fortune 500 companies, its flagship product processes millions of customer interactions daily, ensuring near-perfect uptime through advanced load-balancing and monitoring systems. The company’s backend services are built using Spring Boot, leveraging AWS infrastructure for scalability and reliability. Despite its technological success, TechNova faces challenges with legacy code issues that threaten operational reliability. A recent outage highlighted flaws in a critical service file, prompting a refactoring initiative to modernize the codebase and reduce technical debt.

You will take on the role of a Software Engineer tasked with refactoring a legacy Spring Boot service file, CustomerServiceImpl.java, which is vital to TechNova’s customer management system. Your mission is twofold: first, resolve dependency injection issues by converting dependencies to constructor injection and adding proper annotations to ensure the Spring IoC container recognizes all components. Second, implement the unfinished business logic for three methods: getAllCustomers(), getCustomerById(Long id), and createCustomer(Customer customer).

You will collaborate one-on-one with Evelyn Carter, the Technical Lead for Cloud Backend, who will provide structured feedback, challenge your technical decisions, and ensure your solutions align with Spring Boot best practices. Through this interaction, you’ll justify your approach to dependency injection, annotations, and service design while ensuring the refactored code is maintainable and reliable.

  • Refactor the CustomerServiceImpl.java file to resolve dependency injection issues using constructor injection and proper annotations.
  • Implement the business logic for three methods to ensure operational reliability and maintainability.
  • Collaborate with Evelyn Carter in real-time chat to discuss and refine your technical decisions.
  • Ensure the refactored service adheres to Spring Boot best practices and is testable, scalable, and reliable.

Evaluated Skills

Spring BootTechnical Problem-Solving

Helpful for

Software Engineer - Java Spring BootTechnical Lead - Cloud BackendBackend Developer