Introduction
A few weeks ago, I started the #100DaysOfCode challenge, and I'm beginning to understand why so many developers recommend it.
Week 1 was all about laying the foundation. I spent hours debugging my Spring MVC application, fixing configuration issues, and realizing that progress in software engineering often comes from solving problems rather than writing new code.
As I stepped into Week 2, things started to shift. I spent less time fighting bugs and more time learning new concepts, building projects, and being intentional about my growth. Instead of simply following tutorials, I found myself thinking more about how everything fits together and how I can become a better software engineer.
"Make it work, make it right, make it fast."
β Kent Beck
Day 4: Applied for a Job Role
One of the biggest moments of Week 2 happened on Day 4.
My mentor shared the Junior Backend Engineer opening at Chowdeck and encouraged me to apply. I submitted my application, but I didn't stop there.
I wanted to give myself a better chance of being noticed, so I decided to go the extra mile. I recorded a short introduction video where I talked about who I am, what I've been learning, and why I believed I would be a good fit for the role.
After that, I reached out directly to the CEO, CTO, and a Technical Lead with a personalized email and included the video as part of my introduction.
Although I havenβt gotten a response yet and donβt know what the outcome will be, Iβm proud that I took the initiative. I just hope they reply soon.
Day 5: Exploring Spring Boot Data JPA
On Day 5, I focused on Spring Boot Data JPA and started understanding how it simplifies working with databases compared to the traditional Spring Framework.
What i Learnt and Explored
- Spring Boot Data JPA configuration
- JPA Repositories for saving and retrieving data
- Query DSL (findBy...) for generating queries automatically
- Custom queries using the @Query annotation
- REST fundamentals and how applications communicate through APIs
Challenges I Faced
Although I spent less time debugging this week, I still ran into one issue while configuring Spring Boot Data JPA.
When I tried running the application, Hibernate failed to start and threw the following error:
Caused by: java.lang.ClassNotFoundException:
Could not load requested class: org.hibernate.dialect.MySQL5Dialect
I initially configured the application to use org.hibernate.dialect.MySQL5Dialect. After checking the Hibernate documentation, I realized that this dialect is no longer recommended for newer Hibernate versions.
The fix was simply to update the configuration to use the generic MySQL dialect instead:
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQLDialect
After making that change, the application started successfully and I was able to continue learning.
Application Running Successfully
Day 6: Learning Docker
Day 6 didn't go exactly as planned because there was no electricity till the end of the day. Even so, I didn't want to break my streak of posting.
Since I couldn't spend much time coding, I decided to continue learning Docker and strengthen my understanding of containerization.
Some of the concepts I explored:
- Image tagging
- Docker Hub
- The difference between
docker runanddocker compose - Commonly used Docker commands
Challenges I Faced
There weren't any major technical challenges today. The biggest obstacle was simply not having enough time due to the power outage.
Instead of calling the day a loss, I decided to focused on learning concepts that didn't require me to build a full project.
Day 7: Understanding REST APIs
On Day 7, I dived my focus to understanding how Spring Boot handles data in REST APIs more.
Some of the concepts I explored:
- REST methods (
GET,POST,PUT, andDELETE) - Using Jackson to convert Java objects into JSON
- Working with
@PathVariableto capture values from the URL - Returning XML responses with Jackson XML
- Understanding the
producesattribute - Using
@RequestBodyand theconsumesattribute to handle request data
Challenges I Faced
Unlike on Day 5, I didn't run into any major issues while following along.
I was able to understand the concepts, implement them successfully, and spend more time learning. This made me realize that the hours I spent debugging in Week 1 are starting to pay off.
The Result
By the end of the day, I had more understanding of how Spring Boot handles requests and responses in REST APIs.
Learning how JSON conversion, request handling, and HTTP methods work together gave me a better picture of how backend applications communicate with clients, and it's another step toward becoming a more confident backend developer.
Application Running Successfully
Day 8: Learning from the Spring Community
While scrolling through LinkedIn, I came across a post from Naija JUG announcing a live Spring Boot session featuring Josh Long, Spring's first Developer Advocate. Since I'm currently learning Spring Boot, I knew I couldn't miss the opportunity to hear directly from someone who has contributed so much to the Spring ecosystem.
Naija JUG Announcement
The session covered the Spring ecosystem, some of the latest features in Spring Boot, and included a live coding demonstration that was both insightful and inspiring.
Josh Long During the Session
Some of the things I learned:
- A broader view of the Spring ecosystem
- New features and improvements in Spring Boot
- An introduction to GraalVM and its role in Spring applications
- Best practices from an experienced Spring Developer Advocate
It was inspiring to hear directly from someone who has contributed so much to the Spring ecosystem. Watching him code live reminded me how much there is still to learn, and it motivated me to keep improving one day at a time.
Challenges I Faced
There weren't any technical challenges. The only challenge was simply keeping up with the live coding session because Josh Long moved incredibly fast π .
Even though I couldn't follow every line of code in real time, I learned a lot by watching how he approached problems and explained different concepts.
One day, I hope to code with that level of confidence and speed too.
Goals for Week 3
As I head into Week 3 of this journey, these are the goals I've set for myself:
- Continue strengthening my Java and Spring Boot fundamentals
- Complete my Product Management Console App and rebuild it as a Spring Boot application
- Build more backend projects with less reliance on tutorials
- Continue learning Docker and deployment concepts
- Keep improving my problem-solving skills by building consistently
- Continue documenting my journey and sharing what I learn
Week 2 taught me that growth isn't just about writing more code. It's about staying consistent, learning from others, putting yourself out there, and building one step at a time.
I'm excited to see what Week 3 has in store.
If you're also learning, building, or growing in tech, I'd love to connect and learn from your journey too.
Let's keep building.π
LinkedIn:
https://www.linkedin.com/in/onatade-abdulmajeed/
X (Twitter):
https://x.com/spider337761





Top comments (0)