Featured Articles
OOP Concepts in Java: The 4 Pillars and Composition, with Examples
Get object-oriented programming (OOP) wrong and you’ll pay for it for years: tangled classes, features that break other features, a codebase nobody wants to touch....
Big O Notation in Java: Time and Space Complexity for Coding Interviews
Big O notation describes how the running time or the memory of an algorithm grows when its input grows. An algorithm that is fast for...
All Articles
Switch to an AI Career in Germany: MSIT's Funded Programs and a €500 Welcome Bonus
Werbung / Advertising. This article contains my referral link to MSIT. If you enroll in an eligible program through it, you receive a €500 welcome bonus, and I receive a...
Replace OAuth2RestTemplate with RestClient: A Modern Spring Boot API Client
In the previous post, we built a program that walks an Order API (buyers, suppliers, customer numbers, articles) and places a test order. It works, but it’s built on OAuth2RestTemplate,...
The Trade-offs Every Engineer Should Know Before Their Next Whiteboard Interview
System Design on AWS: The Trade-offs Every Engineer Should Know Before Their Next Whiteboard Interview
Build a RESTful Web Service with Spring Boot, Gradle, and OpenAPI
By the end of this guide you’ll have a working Spring Boot RESTful API, built with Gradle and documented with OpenAPI, and a live Swagger UI page you can show...
Items in Containers: Count Items in Closed Compartments (Code Interview Problem)
This one shows up in online coding assessments under the name Items in Containers, and it’s a trap: the obvious solution passes the examples and then times out on the...
From O(n²) to O(n): Replace Nested Loops with a HashMap in Java
One endpoint in a B2B order system I worked on returned 1,000 orders, and it was slow. The database wasn’t the problem. Two innocent-looking nested loops were. Here’s how one...