Competitive coding gives you a better understanding of the algorithmic principles, how to solve a given problem in the most optimal timeframe. A real world point of view, competitive coding doesn’t necessarily teach you how to write good code, make the most optimum use of memory and other resources, or how to work in an organisational structure - keep your work documented, interacting with other developers, version control, etc.
Then why you should learn competitive coding?
- The main reason is that most of the company test your problem solving skills when they are looking to hire.
Competitive coders have a edge over the others while during tests/interviews. A high rank in competitive coding platform indicate their good problem solving aptitude in a limited time
- Competitive coding also gives you a good grasp on the fundamentals of discrete math, data structures and algorithms.
- You will definitely get an opportunity to work with these companies if you perform well in world level contests . It makes you sharper and a better programmer overall. However, one cannot rely solely on competitive programming to become a good developer/engineer.
If, competitive coding is not your cup of tea, its not the be all and end all of programming- it is absolutely not necessary to force yourself to learn it or like it. Try your hand at other technologies like machine learning and data science .
If you have read up to this point,Kudos to you. Hope you enjoyed the article.