Activity
Mon
Wed
Fri
Sun
Jul
Aug
Sep
Oct
Nov
Dec
Jan
Feb
Mar
Apr
May
What is this?
Less
More

Owned by Nelson

Amigoscode

1.7k members • Free

A free learning community led by Nelson Djalo. Master Programming & AI, get updates, and grow in a fast-moving industry.

Amigoscode Academy

45 members • $99/month

AI Full Stack Developer - Learn, Build, Grow, Get Promoted & Land Jobs

Memberships

Software Engineering

764 members • Free

Skoolers

182k members • Free

96 contributions to Amigoscode
Spring Security 7 Crash Course
Most developers use Spring Security every day and still can't explain how it actually works. I don't blame them. The docs are dense, the diagrams are confusing, and most tutorials just tell you to copy a SecurityConfig and hope for the best. So I recorded a full Spring Security 7 crash course - and made it free. In ~1.5 hours, you'll go from "it just works somehow" to actually understanding the internals: → The security filter chain (what really happens before your controller runs) → Form Login, end to end → Basic Auth as a stateless API → The JSESSIONID cookie and how sessions get hijacked → CSRF — what it is and when to disable it → The Authentication Manager, providers, and DAO provider → Custom users with UserDetailsService → Why your login fails even with the correct password (the password encoder trap) Built on Spring Boot 4 and Java 25. Source code and diagrams included. If you can confidently implement and explain security, you stand out — in code reviews, in interviews, and on your CV. Watch it free 👇 https://youtu.be/IqW6NVxPaTc What part of Spring Security trips you up the most? Drop it below 👇
From Pet Projects to Engineering Playgrounds: Learning Real-World Constraints
Java is used in enterprise domains such as banking and telecom. In vacancies for Java Software Engineers, companies often require experience with performance issues, concurrency issues, scalability, maintainability, and availability. I have encountered a problem: it is difficult to choose a pet project. On one hand, I cannot build a new bank-level system. On the other hand, if I choose a simple project, I will not encounter performance issues or similar challenges. So I think I should create a playground instead of a complete project — a set of projects focused on specific cases and engineering problems. The problem is that this is not an end-to-end project. (not shippable product) You cannot really ship such a project. What is your opinion? What do I have to do to become a Senior Java Developer and get a remote job?
1 like • 11d
@Igor Madeyra Your playground idea is half right. The fix: don't build scattered snippets, build one shippable product whose requirements force the hard problems. Engineering problems come from the requirements you pick, not the size of the domain. A ticket booking system is perfect. Seat reservation is a real concurrency problem (double-booking, locking, transaction isolation). Payment is an idempotency problem. Popular events are a load problem. One product, and a playground at the same time. What makes it senior-level isn't features, it's treating it like production: - Load test it (k6, Gatling, JMeter), find where it breaks, document the numbers - Add observability (Actuator, Micrometer, Prometheus, Grafana) - Handle failure (retries, timeouts, circuit breakers, idempotency keys) - Write down your decisions and trade-offs in a README To become a Senior Java Dev with a remote job: - Seniority is judgment, not Java trivia. Show decisions, not just code. - Go deep where it counts: concurrency (`java.util.concurrent`), JVM/GC, how your DB behaves under load, distributed failure modes. Spring Boot fluency is assumed. - For remote roles, written communication is a hard filter. A clear README and architecture doc are the screening test, not a side task. - Build in public. Write up "how I found and fixed a concurrency bug" type posts. Proves the skill and makes you visible to people who hire.
🫘Spring Bean Lifecycle
Every Spring Boot app you’ve ever run quietly creates, wires, and destroys objects for you, in other terms, this is Inversion of Control (IoC), a concept we’ll break down later. 1. Instantiation Spring creates the bean instance. 2. Dependency Injection Dependencies are injected (@Autowired, constructor injection, etc.). 3. Initialization (@PostConstruct) Custom setup logic runs after dependencies are ready. 4. Ready State Bean is fully initialized and used across the application. 5. Context Shutdown Application begins shutdown. 6. Cleanup (@PreDestroy) Cleanup logic runs (closing resources, connections). 7. Bean Destroyed Bean is removed and becomes eligible for garbage collection. Bean Scopes (Important) - Singleton (default): One instance per application - Prototype: New instance each time requested - Request / Session: Scoped to HTTP request or session
🫘Spring Bean Lifecycle
2 likes • 21d
@Ian Dancan our java champion
1 like • 11d
lol
Welcome and Introduce yourself here 🔥
👋 Hi! Welcome to the Community Step 1: Introduce yourself in this thread below! (✄ Copy/paste template 👇) Where are you from? Tell us something about you? What do you hope to achieve here? Which platform brought you here? IMPORTANT Step 2: Engage with others. Like at least 5 introductions to unlock most of the content and start building connections. Step 3: Read the pinned posts as they include important guidelines and resources to help you get the most out of this community. 🚨 Please do not promote paid services (mentorship, courses, other communities, etc). Doing so will result in a ban. We’re glad to have you here and looking forward to your introduction! Don't forget to completed this poll
Poll
408 members have voted
Welcome and Introduce yourself here 🔥
1 like • 11d
@Philip Olaomo welcome buddy
1 like • 11d
@Oyinlola Alasoluyi Welcome Amigo
== vs .equals(Object x) for Comparisons
“One of the Most Expensive Java Bugs Starts With ==” Most developers know: - == compares references - .equals() compares values But very few actually understand what’s happening inside JVM memory. In this video, I break down: - how the String Pool works - why "Hello" == "Hello" returns true - why new String("Hello") changes everything - how Java reuses references internally - and how this tiny mistake silently causes production bugs We’ll even visualize: - heap memory - pooled strings - object identity - and intern() behavior Once you understand this, concepts like: - HashMap internals - caching - immutability - Hibernate equality - and JVM optimizations Repository Article
== vs .equals(Object x) for Comparisons
1 like • 11d
@Ian Dancan thanks buddy
1-10 of 96
Nelson Djalo
6
1,227points to level up
@nelson
I help you become a Software Engineer companies want to hire

Active 54m ago
Joined Aug 19, 2025
Amigoscode Academy
Powered by