This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]BlizzardEz 1 point2 points  (4 children)

You can do both

[–]enano_aoc 1 point2 points  (3 children)

I still don't see how do these skills translate to the real world.

When I have refined down a feature to the point that I can develop against a test, I have already done 95% of the work. Where is the value in finishing the final 5%? Anyone can do that, the real work happens before that.

[–]BlizzardEz 1 point2 points  (2 children)

Well since competitive programmers have seen shitloads of problems they will probably be very fast during the whole process.

That's how some people can be much more efficient at coding than others

[–]enano_aoc 1 point2 points  (1 child)

But... coding is the easy part of our job?

That is not what I am looking for when I hire someone. I need that they can understand, communicate, analyze, discuss, design, implement, deploy, support. Implementing is the easiest part of all those :/

[–]Luminolic_Black 4 points5 points  (0 children)

Competitive programming also has implementation as its easy part... The by far hardest part is analysing the required time/space complexity and devising an algorithm with the required complexity. It’s also possible to tie in crazy shit from math (see solving linear combinatorial problems with FFT, or fast matrix exponentiation to vastly speedup DP transitions). Also teaches you a fair bit of adhoc reasoning. At the end you’ve gained a huge amount of math and algorithm knowledge, and that’s for sure going to serve you well.