Harsh Singh

Full-Stack Developer & Open Source Contributor

I build performant web apps and contribute to scientific computing — React on the front, Julia & Go under the hood.

H
All posts
·4 min read

Reaching Specialist on Codeforces: What Competitive Programming Taught Me

  • Competitive Programming
  • C++
  • Algorithms
  • Journey

I hit a max rating of 1495 (Specialist) on Codeforces. The rating matters less than the habits it built — competitive programming rewired how I approach problems everywhere else.

It's not about memorising algorithms

People assume CP is about knowing every algorithm. It isn't. Most contest problems test whether you can:

  1. Read carefully and find the real constraint.
  2. Reduce the problem to something you recognise.
  3. Estimate complexity before you write a line.
// The reflex CP drills into you: check the bound first.
// n <= 1e5 and a time limit of 1s? O(n^2) is 1e10 — too slow.
// You need O(n log n). Now you know what you're looking for.

What carries over to real engineering

  • Complexity intuition. I now feel when a loop is going to be too slow before profiling proves it.
  • Edge-case paranoia. Contests fail you on the one input you didn't consider; production does too.
  • Calm under a clock. Debugging a failing submission with minutes left is great training for an incident.

The honest part

I also qualified JEE Main and landed a Top-100 rank in Physics (CUET) — the same muscle: structured problem-solving under time pressure. CP just made it a daily practice.

If you're a web developer who's never tried it: do a few Div 2 contests. It won't make you a better React developer overnight, but it will make you a sharper problem-solver — and that shows up everywhere.

Designed & built by Harsh Singh · singhharsh.in