The Treasury and Finance Ministry of Turkey has kick-started a campaign on 21st April which aims to train at least 1 million software developers.
It has been announced on Twitter:
We put into practice today the revolutionary ‘1 million software developer’ program, which will make our country one of the leading countries in the world in software development. A historic step is being taken for Turkey today.
Turkey has scarce human resources in software development with about 140,000 employees. Since their number is limited in Turkey, software developers have to take responsibilities of a system analyst, system testing expert, project supervisor, database expert, designer, and security expert at the same time. Firms always complain about having difficulty in hiring in these positions.
We aim to solve this problem with the “1 million software developer” program. Software developers will work much more efficiently since they will only work on the areas they are experts.
31 courses of nearly 47.000 minutes are already uploaded on the training portal. The number of courses will increase to 100 until the end of the year.
Each exam score of completion of these courses will automatically be added to their CVs. Companies will be given access to the CV pool.
Courses will be free of charge and everyone can access it.
After the “1 million software developer” program has been announced, of course, people started the criticize it. While veteran software developers support the idea that the “1 million software developer” program will affect the businesses in a bad way (Quality vs Quantity), students/hobbyists, etc. believe that this program will help them to learn how to code and get a job way easier.
We are living in a world which constantly transforming. It is getting more connected, more digital every day. We need to understand today’s world, use the tools that exist and leverage them to improve our productivity. These free courses are giving people a chance to do it exactly.
Let me tell you a story. Once I have met with someone. Their team was responsible to download product images everyday from several websites and upload their internal systems. Can you believe that how much time they could save if any of their team members would now basic scripting? They could automate all the processes.
It does not have to be all examples about coding. Imagine someone, who has a local shop, manually keep track of inventory. This is an error-prone process. It takes a lot of time. Knowing how to use office programs would help to save time and could make their life more productive.
There is limited soft skill trainings
Software development is not just about coding from morning to evening. It would be really easy if it was.
As a software developer, you need to be part of several meetings -planning, grooming, design, mentorship- with different stakeholders -managers, UI/UX designers-. During each meeting, you might have to mimic a different role. You cannot build the right product without understand customer problem. You cannot deliver a product on time if you don’t estimate well or have a good judgment about tradeoffs between decisions. Most importantly, different stakeholders use different mediums to share information. While some of them use planning boards, others might use design documents. Having success as a software developer not just depends on coding skills, but most importantly it requires to have good soft skills.
It is all about online courses
Nowadays, it is possible to find a course anything you might be curious about. Are you curious about machine learning? Sure. Tons of ML course available today. Wanna be a web developer? Here is the React training. However we still have too many open positions today and companies are having a hard time hiring highly qualified people. Making online courses definitely will increase the number of people work in this field. However this will not improve the “quality”. Software development is not just about doing working software but also well-crafted software. I have been professionally doing software development for the last 6 years, following several programming blogs, Youtube channels, people on twitter. Even though I learn a lot from exposing myself to all the information what others share, I must say that doing a bad decision on real product teaches you way more than anything. I hope, they somehow find a way to support these courses with real-life practice.
Trainings needs to be more focused
There is no “guidance”
This platform mostly will be used by people who have little or no knowledge about programming. They need guidance to achieve their goals. Today, courses have been grouped such as software development, cybersecurity… It is easy to get distracted and jump one course to another or struggle to find out what to learn next if you have little experience. It would be great if they can add roadmap functionality (e.g. roadmap.sh)
There is nothing wrong with encouraging people to learn to code. This program may help people to do headstart. Also I believe that it will get better over time.
On the other hand, this program should not be announced as a “hope” to find a job (complete course, get the job). Companies are looking for people who do more than complete courses. People must be aware of that.