December 5, 2025

Tools I Use to Improve at Programming – Part 1: LeetCode

Tools I Use to Improve at Programming – Part 1: LeetCode

LeetCode - Improve Your Programming

Tools I Use to Improve at Programming – Part 1: LeetCode

If you’re learning to program or want to take your skills to the next level, practicing code problems is key.

One of my favorite platforms for this is LeetCode, a website with hundreds of algorithm and data structure problems, used by thousands of programmers and top companies like Google, Amazon, and Meta.

In this series of articles, I’ll tell you about the tools I use to improve at programming. And in this first part, I’ll talk about LeetCode: what it is, why I use it, and how you can get the most out of it.


🚀 What is LeetCode?

LeetCode is a programming platform where you can practice algorithm and data structure problems in different languages like Python, Java, C++, JavaScript, among others.

What makes LeetCode special is that it simulates technical interview challenges at tech companies. If you dream of working at a top software company, LeetCode is practically a requirement.

Types of problems on LeetCode:

  • Algorithms: Recursion, binary search, dynamic programming.
  • Data structures: Linked lists, trees, stacks, queues, graphs.
  • SQL: Advanced queries for databases.
  • Shell scripting: For task automation.

💡 Why do I use LeetCode?

There are many platforms to improve at programming (HackerRank, CodeSignal, CodeForces), but LeetCode is my favorite because:

🔹 It’s focused on technical interviews → It’s the best way to prepare for code interviews at software companies.
🔹 It has problems of different levels → You can start with easy problems and advance to more complex ones.
🔹 The community is incredible → There are forums where you can discuss solutions and learn from other programmers.
🔹 It helps you think like a software engineer → You not only improve your code, but also the way you structure solutions.


🎯 How to get the most out of LeetCode?

If you’re new to the platform, here are some tips that have helped me improve my programming logic:

1️⃣ Start with easy problems (Easy)

Don’t jump immediately to hard problems (Hard), because they can be frustrating. It’s best to start with Easy, understand solution patterns, and then level up.

📌 Recommendation: Try to solve at least 50 easy problems before moving to intermediate ones.


2️⃣ Learn common solution patterns

Many problems on LeetCode follow common patterns like:
Two Pointers
Binary Search
Backtracking
Dynamic Programming
Recursion vs Iteration

📌 Tip: Instead of memorizing solutions, try to identify the patterns behind each problem.


3️⃣ Don’t look at the solution immediately

If a problem blocks you, try to solve it on your own for at least 30-40 minutes before looking for hints or solutions.

📌 Golden rule: If after 40 minutes you’re still stuck, check the discussions on LeetCode and learn from others’ solutions.


4️⃣ Write clean and efficient code

In technical interviews it’s not only important that your code works, but that it’s also clear and efficient.

📌 Good practices on LeetCode:

  • Use descriptive variable names.
  • Comment your code if the solution is complex.
  • Try to reduce time complexity (O(n), O(log n), etc.).

5️⃣ Practice SQL and data structures

LeetCode is not just for algorithms. It also has SQL exercises, something very useful if you work with databases.

📌 Example: If you work with data, you can practice advanced queries like JOIN, GROUP BY, subqueries, and CTEs.


🔥 How much time should you practice on LeetCode?

It depends on your goals. Here are some recommendations:

If you just want to improve at programming: 3-4 problems per week.
If you’re preparing for a technical interview: 1-2 hours daily.
If you want a serious challenge: One Medium difficulty problem per day.

💡 Remember: It’s not just about solving problems, but understanding the concepts behind each one.


💬 Conclusion

LeetCode is one of the best tools to improve at programming, whether you want to practice logic, learn data structures, or prepare for technical interviews.

If you haven’t tried it yet, go for it! It can be difficult at first, but with practice you’ll notice how your ability to solve code problems improves.

🔹 Do you already use LeetCode? Do you have any tips to improve? Leave it in the comments. 🚀

Share