.jpeg&w=2048&q=75)
Introduction
Competitive programming has been one of the most transformative experiences of my college journey. It's where I learned that coding isn't just about writing programs—it's about thinking critically, solving problems efficiently, and working together as a team to achieve something greater than any individual could accomplish alone.
This blog post is about one of my earliest and most significant achievements in competitive programming: the IEEE contest where our team—comprising Murali Madhav, Priyanshu Jangra, and myself—emerged as the best team in Haryana, ranking in the top 13% in India and top 19% globally. This achievement, which came way before my Singapore tech trek, was a pivotal moment that shaped my approach to problem-solving, teamwork, and continuous learning.
The Beginning: Discovering Competitive Programming
When I first entered college, competitive programming was a world I knew little about. I had written code before, solved basic problems, and understood programming fundamentals. But competitive programming was different—it demanded more. It required:
- Algorithmic thinking: Understanding which approach would work best for a given problem
- Time complexity awareness: Writing solutions that could handle large inputs efficiently
- Pattern recognition: Identifying similar problems and applying known techniques
- Stress management: Performing under time pressure and competition conditions
- Team collaboration: Working effectively with teammates to solve complex challenges
The transition from regular programming to competitive programming wasn't easy. I spent countless hours on platforms like Codeforces, LeetCode, and HackerRank, solving problems, understanding different algorithms, and learning from my mistakes. Each solved problem felt like a small victory, and each unsolved one was a lesson in patience and persistence.
Forming the Team: The Power of Collaboration
One of the most important lessons I learned early on was that competitive programming isn't just an individual sport—it's often a team effort. When the IEEE contest was announced, I knew I wanted to participate, but I also knew that success would require the right team.
Murali Madhav: The Algorithm Specialist
Murali Madhav brought deep algorithmic knowledge to our team. His strength lay in recognizing patterns, understanding complex data structures, and quickly identifying the right approach for a problem. When we were stuck on a problem, Murali often had the insight that would break it down into manageable parts.
Priyanshu Jangra: The Implementation Expert
Priyanshu Jangra was our implementation specialist. He had an incredible ability to translate algorithmic ideas into clean, efficient code quickly. While we discussed approaches, Priyanshu would often start coding, catching edge cases and optimizing as he went. His coding speed and accuracy were invaluable during the contest.
Me: The Problem Analyzer and Coordinator
My role was to analyze problems, coordinate our approach, and ensure we were making progress on multiple problems simultaneously. I focused on understanding problem requirements, breaking them down, and managing our time effectively across different challenges.
Together, we formed a complementary team where each member's strengths covered the others' weaknesses. This synergy would prove crucial during the contest.
Preparing for the IEEE Contest
Preparation for the IEEE contest wasn't just about solving problems individually—it was about learning to work as a team. We spent weeks:
1. Solving Problems Together
We practiced by solving problems as a team, simulating contest conditions. This helped us understand each other's thinking processes, communication styles, and problem-solving approaches. We learned to:
- Divide problems based on difficulty and our individual strengths
- Communicate solutions clearly and quickly
- Review each other's code for bugs and optimizations
- Manage time effectively across multiple problems
2. Studying Algorithms and Data Structures
We focused on strengthening our knowledge of:
- Data Structures: Arrays, linked lists, stacks, queues, trees, graphs, heaps, hash tables
- Algorithms: Sorting, searching, dynamic programming, greedy algorithms, graph algorithms, string algorithms
- Advanced Topics: Segment trees, binary indexed trees, suffix arrays, number theory, combinatorics
3. Contest Strategy
We developed a strategy for the contest:
- Problem Reading: One person reads all problems quickly and categorizes them
- Problem Selection: Start with problems we're confident about
- Parallel Work: Work on different problems simultaneously when possible
- Code Review: Always review code before submission
- Time Management: Know when to move on from a difficult problem
The Contest Day: Pressure and Performance
The day of the IEEE contest was intense. We were competing against teams from across Haryana, India, and the world. The pressure was real, but so was our preparation and determination.
The Early Problems
We started strong, quickly identifying and solving the easier problems. Our strategy of reading all problems first paid off—we could see the full scope of the contest and prioritize effectively. Murali's pattern recognition helped us identify familiar problem types, Priyanshu's implementation speed got our solutions coded quickly, and my coordination kept us organized and efficient.
The Challenging Problems
As the contest progressed, we encountered more challenging problems. This is where our teamwork truly shone:
- Problem Analysis: We'd discuss approaches, identify potential pitfalls, and agree on a strategy
- Division of Labor: While one person coded, others would work on other problems or review code
- Debugging Together: When code didn't work, we'd debug as a team, catching issues faster
- Optimization: We'd review solutions for time and space complexity, optimizing when needed
The Final Push
In the last hour of the contest, we were working on our most challenging problems. The pressure was high, but our preparation and teamwork kept us focused. We made strategic decisions about which problems to prioritize, when to submit, and when to move on.
The Results: Beyond Our Expectations
When the results were announced, we were thrilled but also humbled:
Best Team in Haryana
Being recognized as the best team in Haryana was an incredible honor. It validated our preparation, teamwork, and problem-solving skills. It showed that with the right combination of individual talent and collaborative effort, we could compete at the highest levels in our state.
Top 13% in India
Ranking in the top 13% in India put our achievement in perspective. India has some of the world's best competitive programmers, and being in the top 13% meant we were competing with and beating many highly skilled teams. This ranking motivated us to continue improving and pushing our boundaries.
Top 19% Globally
The top 19% global ranking was perhaps the most humbling achievement. It showed us that competitive programming is a global community, and our success was measured against teams from around the world. This global perspective would later influence my approach to technology and innovation, as I learned to think beyond local boundaries.
Lessons Learned: Beyond the Contest
The IEEE contest taught me lessons that extend far beyond competitive programming:
1. The Power of Teamwork
Individual talent is important, but teamwork multiplies that talent. When team members complement each other's strengths and support each other's weaknesses, the team becomes greater than the sum of its parts. This lesson has stayed with me in every team project, hackathon, and leadership role since.
2. Preparation Meets Opportunity
Our success wasn't accidental—it was the result of weeks of preparation, practice, and strategic planning. The contest showed me that when preparation meets opportunity, extraordinary results are possible. This principle guides my approach to every challenge I take on.
3. Continuous Learning
Competitive programming is a field where you're never done learning. New algorithms, techniques, and problem types constantly emerge. The contest reinforced the importance of continuous learning and staying curious. This mindset has been crucial in my journey through college and beyond.
4. Handling Pressure
Performing under pressure is a skill that competitive programming develops. The contest taught me to stay calm, think clearly, and make good decisions even when time is limited and stakes are high. This ability has been invaluable in exams, interviews, and high-stakes projects.
5. Problem-Solving Mindset
Competitive programming develops a problem-solving mindset that applies everywhere. The ability to break down complex problems, identify patterns, and find efficient solutions is valuable in software development, research, entrepreneurship, and life in general.
The Journey Continues: From IEEE to ICPC and Beyond
The IEEE contest was just the beginning. The confidence and skills we gained propelled us forward:
ICPC and Other Competitions
After the IEEE contest, we continued competing in various programming competitions, including ICPC (International Collegiate Programming Contest). Each competition was a learning experience, building on the foundation we established in the IEEE contest.
Applying Skills Beyond Competitions
The skills we developed in competitive programming proved valuable beyond contests:
- Software Development: Writing efficient, optimized code
- Technical Interviews: Solving coding problems under pressure
- Research Projects: Applying algorithmic thinking to research problems
- Hackathons: Quickly building solutions to complex problems
Building a Community
Our success in the IEEE contest also helped us build a competitive programming community at our college. We started organizing practice sessions, sharing resources, and mentoring other students. This community-building aspect was as rewarding as the competitions themselves.
Competitive Programming: A Foundation for Growth
Looking back, the IEEE contest and my competitive programming journey have been foundational to my growth as a developer and problem-solver. The experience:
Shaped My Technical Skills
- Algorithmic Thinking: Understanding which algorithms to use and when
- Code Optimization: Writing efficient, scalable solutions
- Problem Decomposition: Breaking complex problems into manageable parts
- Time Management: Working effectively under time constraints
Developed Soft Skills
- Teamwork: Collaborating effectively with teammates
- Communication: Explaining solutions clearly and quickly
- Resilience: Persisting through difficult problems
- Strategic Thinking: Making decisions about problem selection and time allocation
Opened Doors
The achievement in the IEEE contest opened doors to:
- More Competitions: Opportunities to compete at higher levels
- Networking: Connecting with other competitive programmers
- Recognition: Being recognized for technical excellence
- Future Opportunities: Setting the stage for later achievements like the Singapore tech trek
Reflections: Why Competitive Programming Matters
Competitive programming isn't just about winning contests—it's about developing a mindset and skill set that serves you throughout your career. The IEEE contest was a milestone, but the real value was in:
Building Problem-Solving Confidence
Every solved problem, every contest, and every achievement builds confidence. The IEEE contest showed me that I could compete at high levels, which gave me confidence to take on other challenges.
Developing a Growth Mindset
Competitive programming teaches you that improvement is always possible. There's always a harder problem, a more efficient solution, or a new technique to learn. This growth mindset has been crucial in my continuous development.
Creating Lasting Friendships
The bonds formed with Murali and Priyanshu during our preparation and competition have lasted beyond the contest. Working together toward a common goal created a strong foundation for friendship and future collaboration.
Setting Higher Standards
Success in the IEEE contest set a standard for excellence. It showed me what was possible with dedication, teamwork, and strategic preparation. This standard has guided my approach to every subsequent challenge.
Advice for Aspiring Competitive Programmers
Based on my experience, here's what I'd tell anyone starting their competitive programming journey:
1. Start with Fundamentals
Master the basics before moving to advanced topics. Strong fundamentals in data structures and algorithms are essential.
2. Practice Consistently
Regular practice is more valuable than occasional intense sessions. Solve problems daily, even if it's just one or two.
3. Learn from Others
Study solutions from top performers, read editorials, and participate in discussions. Learning from others accelerates your growth.
4. Participate in Contests
Regular contest participation helps you perform under pressure and learn to manage time effectively.
5. Build a Team
Find teammates who complement your skills. Team contests teach collaboration and often lead to better results.
6. Don't Give Up
Competitive programming is challenging. You'll face difficult problems and setbacks. Persistence is key to improvement.
7. Apply Your Skills
Use competitive programming skills in real projects, hackathons, and interviews. The skills are valuable beyond contests.
Conclusion: A Milestone That Shaped My Journey
The IEEE contest achievement—being the best team in Haryana, ranking in the top 13% in India, and top 19% globally—was more than just a competition result. It was a milestone that:
- Validated our preparation and teamwork
- Built confidence for future challenges
- Developed skills that served us beyond competitions
- Created lasting friendships and memories
- Set a standard for excellence
This achievement, which came way before my Singapore tech trek and other experiences, was foundational. It showed me that with the right combination of individual talent, teamwork, preparation, and determination, extraordinary results are possible.
Competitive programming continues to be a part of my journey, and the lessons from the IEEE contest guide me in every challenge I take on. To Murali Madhav and Priyanshu Jangra—thank you for being incredible teammates and friends. To anyone reading this—if competitive programming interests you, start your journey. The skills you'll develop and the experiences you'll have are invaluable.
The journey from code to victory isn't easy, but it's worth it. And sometimes, the victory isn't just in the results—it's in the growth, the teamwork, and the memories created along the way.
Related Articles
Interested in learning more about my journey? Check out these related posts:
- Singapore Tech Trek 2024 - Another milestone in my journey, exploring Singapore's innovation ecosystem
- Best AI Tools for Developers in 2025 - Tools I use to boost my productivity
- Was It All Worth It? - Reflections on my development journey
About the Author
I'm Subham Mahapatra, a Full Stack Developer with experience in competitive programming, web development, and AI/ML. Check out my projects to see what I've built, or contact me if you'd like to discuss competitive programming or collaboration opportunities.
Competitive programming is a journey of continuous learning and growth. The IEEE contest was a milestone, but the real victory is in the skills developed, the friendships formed, and the mindset cultivated along the way.
Read more

Was It All Worth It? A Journey Through Code, Failures, and Growth
A personal reflection on three years at Newton School of Technology - from competitive programming and ICPC to IIT Kharagpur research, hackathons, leadership, Singapore tech trek, and entrepreneurship. An honest account of growth, failure, and resilience.
How to Build a Portfolio Website With React (Step-by-Step Guide)
A complete beginner-friendly guide to building a modern, responsive, and professional portfolio website using React in 2025. Learn components, routing, Tailwind CSS styling, and deployment to Vercel.

Best AI Tools for Developers in 2025 (Ultimate Guide)
Discover the top 10 AI tools every developer should use in 2025 to boost productivity, automate workflows, write cleaner code, debug faster, and ship products 5-10x faster. From GitHub Copilot to Cursor AI.