One Step Deeper into Java & Backend Engineering

VINAYAK GOTEVINAYAK GOTE
2 min read

Hey devs 👋

Every day, I try to move one step closer to my goal: becoming a strong backend engineer with the skills to crack top product-based roles (₹10–20 LPA range). Today was all about depth over speed — not rushing, but truly understanding.

🚀 What I Learned Today:

🔸 Java’s Comparable vs Comparator
I finally cleared the confusion!

  • Comparable is used for natural ordering — implemented by the class itself.

  • Comparator is for custom sorting logic — defined externally.
    → I built a sorting function for a list of students by marks and name. Small project, but powerful learning.

🔸 SpringBoot: Exception Handling with @ControllerAdvice
I implemented a global error handler in my Blog App using @ControllerAdvice.
→ Now my APIs return clean, JSON-formatted errors with proper status codes. Much more production-ready!

🔸 DSA Practice (HackerRank)
Solved 3 problems:

  • Easy: Frequency Count with HashMap

  • Easy: Reverse Words in a Sentence

  • Medium: Subarray with Given Sum (using prefix sum + HashMap)

⚒️ Skills Reinforced:

  • Java OOP & interfaces

  • Backend API best practices

  • HashMap-based problem solving

  • Clean code & error messaging in APIs

✍️ Reflection:

I’m not aiming to learn “everything fast.” I’m aiming to learn the right way. That’s how you build long-term skill, not just interview tricks.


📌 Tomorrow’s Plan:

  • Dive into SpringBoot Validation (@Valid, @NotNull, etc.)

  • Solve 2 Medium DSA problems focused on sliding window & string logic

  • Push today’s SpringBoot changes to GitHub ✅

Thanks for reading! If you're also on the same grind — backend, Java, SpringBoot, or DSA — let's connect and grow together 💪

🔗 GitHub: github.com/Vinu2111
📇 LinkedIn: linkedin.com/in/vinayakgote

0
Subscribe to my newsletter

Read articles from VINAYAK GOTE directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

VINAYAK GOTE
VINAYAK GOTE

I’m Vinayak Gote, a passionate Computer Engineering graduate with strong expertise in Java, Spring Boot, REST APIs, and backend development. With hands-on experience in software development and network performance optimization through roles at Tech Mahindra and Numetry Technology, I thrive on building efficient and scalable backend systems. Currently, I’m upskilling through the AccioJob Full Stack Java Developer program while balancing a part-time job. I’m also learning Go (Golang) to expand my backend capabilities. I love solving real-world problems through clean code, contributing to GitHub, and sharing my daily learning journey on Hashnode and Twitter. My mission is to crack a remote or onsite software engineering role with a package of ₹10–20 LPA within the next 10 months by building impactful projects, mastering DSA, and staying consistent.