Hello Barcelona Bootcamp : Mikhail Tikhomirov’s story
Mikhail started to learn how to programme in middle school, but got serious about competitions in high school and university. "Unlike most successful competitors, I didn't perform very well until senior university years, quite a long time from when I started," Mikhail said.
And the road led to many competitions, including the ACM-ICPC World Finals of 2015. After that he has stayed on the same road, coaching a team to gold medal and training many attendees.
"The reason I enjoy competitive programming is pretty much the same reason I enjoy math: it's the gradual unraveling of complex puzzles, the brain effort and the rewarding 'click' feeling when the tension pays off," he said.
"Compared to other intellectual activities, to me competitive programming has an extra appealing feature: when you have a solution in your head, you can implement it in code and verify its correctness and efficiency with your own eyes," Mikhail told us.
While competitive programming might sound for outsiders a bit strange, it is a start for a high-level career path for many. The teams and individuals competing at the ACM-ICPC Finals have launched several unicorns and run tech teams in massive global corporations.
"A lot of high-level competitive programmers start working at high-profile IT jobs while still in their university years," Mikhail said. "The reason for that is that competitive programming shares a lot of prerequisites with an actual job: knowing your programming languages and necessary theoretical base, good coding practices, teamwork experience, yet one would argue that the most crucial asset is the ability to learn and practice new stuff when necessary, and the ability to think critically."
Mikhail has been a coach for ACM ICPC teams and boot camps now for three years. "As a rule, we offer different programmes depending on attendees' experience, with focus on particular topics we consider useful, or on high-level competition preparation drill," he described the days during the boot camp.
"Regardless of the schedule, we put a lot of effort in providing detailed explanations of every topic and problem encountered. To our participants we recommend to put newly acquired theoretical knowledge to practice on yet uncracked problems, but also find some time to relax and just have fun!"