Importance of Competitive Programming for Software Industries
Interview with Dr. Shazzad Hosain, PhD in Computer Science from Wayne State University, USA and working as Associate Professor of North South University, Bangladesh.
What is competitive programming?
Competitive programming is solving a problem, often a mathematical or logical problem, by computer programming within some constraints such as time limit and memory limit.
What is the present status of competitive programming in Bangladesh?
The history of competitive programming in Bangladesh is very rich. We started it in 1997 when the first Dhaka Regional of ACM International Collegiate Programming Contest (ICPC) was hosted at North South University. Since then every year we are sending our contestants for ACM-ICPC World Finals. Over the last 22 years the culture of competitive programming has grown significantly. A large number of university students as well as high school students are participating contests regularly. Also the good news is Bangladesh will host the ACM-ICPC World Final in 2021. Much credit goes to Dr. Jamilur Reza Choudhury, Vice Chancellor, University of Asia Pacific to make this happen.
How competitive programming is important for software industries?
World famous companies like Google, Microsoft, Facebook readily hires programmers who excel in competitive programming. Samiul Islam who participated in 2016 ACM-ICPC World Finals held in Bangkok, Thailand was hired by Google Office in UK. This shows the importance of competitive programming.
Why it is so important for software industries?
A quality software engineer requires the following abilities. a) Think of different aspects of software failure so that those are avoided from the software product. b) Develop error free software through rigorous testing with different test cases. c) Meet the deadline and having ability to work on pressure within time constraint. Competitive programming introduces all the above qualities to a programmer that are coveted by software industries.
What is the position of our software industries regarding competitive programming?
Unfortunately our software industries could not recognize it the way Google, Microsoft or the international companies do. However, very recently few companies are giving importance to it and they are hiring those who are participating in competitive programming. Interestingly, most of these companies are big outsourcing companies in Bangladesh and they have to compete globally.
What is your suggestion for our software industry?
As I see, a software company must have to understand the strengths of competitive programming to remain competitive in global stage. Unless we can compete in global stage we may not even survive locally.