- Backend Dev – Authentication, Authorization and Security
Who are you, and are you allowed to do that — two different questions that beginners merge into one. Password storage that survives a database leak, sessions versus stateless JWT and the trade you are making, OAuth2 login, checking permissions on the object and not just the endpoint, and the handful of attacks worth knowing by name.
- Tries
A prefix tree: one node per character, words spelled out along the paths. Why it is the wrong choice for exact lookup — a HashSet is simpler and faster — and the right one for autocomplete and every other prefix question a set cannot answer.
- Terraform with AWS – Building the Network and Database
The first half of a real deployment. A VPC with public and private subnets across two availability zones, an internet gateway and route tables, security groups that reference each other instead of hard-coding CIDRs, and an RDS MySQL instance for the pizza API — with the database password kept out of both the code and the state file.
- React Native – Error Boundaries and Failure States
A crash on a phone is a blank screen the user cannot refresh away. Error boundaries and what they deliberately do NOT catch — event handlers, timeouts, async functions, which is most of the code that fails. Turning an API error into something a customer can read, distinguishing a failure from a cancellation, and the LogBox and red screen you only see in development.
- Spring Boot – Testing
The test pyramid as Spring Boot expresses it: a plain unit test with Mockito, a @WebMvcTest slice, a @DataJpaTest slice, and @SpringBootTest for the cases that genuinely need the whole context. Testing secured endpoints, and why the slice you reach for first should be the smallest one that fails honestly.