One of the most common complaints made by new software engineers is that they have a hard time studying. In web development, where they have to study every time a new technology comes out, sometimes outside of work hours, or they feel left behind.
Is the structure of the IT industry that forces engineers to study evil?
Difference between capital-intensive and labor-intensive businesses
Businesses in the world can be broadly divided into labor-intensive and capital-intensive businesses.
Capital-intensive businesses are those that require a large investment of capital and equipment to start their business. It takes money, space, and time to build steel, oil, airplanes, and buildings. While the ability of designers and workers is of course important, you cannot even start a business unless you first have the room to invest in it.
Since the barriers to entry are based on equipment, investing in equipment may be more advantageous than investing in workers in terms of competitive advantage. In such industries, hiring talented people at twice the salary does not always lead to business growth.
On the other hand, in labor-intensive businesses, such as consulting, which can be started with little capital investment, building twice as many offices will not increase sales twice as much, and investing in talented people is more likely to increase sales.
I would say that in the engineering field, shipbuilding and automobile manufacturing are capital-intensive businesses, while software development is labor-intensive. Labor-intensive businesses tend to reflect the value of ability in their compensation, while capital-intensive businesses are relatively more moderate. I think it is a very happy thing that ability is linked to earning money.
There are few things in the world that can be covered by hard work
Many capital-intensive businesses have long company histories due to their structure. The evaluation system may be more seniority-based. Also, While the evaluation system itself may be based on performance, there are many fields in the world where there is no other way to improve one's ability than to accumulate age (experience).
For example, let's say a person needs to design and implement a certain product three times before he or she is ready to work as a professional. For example, a static website might take 1 month x 3 times 3 months, a simple dynamic website implementation might take 3 months x 3 times 9 months, and a difficult machine learning study might take 1 year x 3.
Non-fiction writers, for example, may follow a case for decades, but labor-intensive businesses are often in fields with relatively few iteration cycles.
What about shipbuilding and automobiles, on the other hand? Building a ship might take 5 to 10 years. If it takes three times that, it would be about 20 years. Cars might be shorter, maybe 3-5 years. Still, x3 would take about 10 years. It is common that it takes a few years to realize that the first part you designed was a failure.
Web-based programmers often forget about this because it is relatively easy to get information about anything on the web, but most of the engineering know-how in the world cannot be found by searching. It is often a private asset of the company, or can only be obtained through actual experience. It is often overlooked that in many fields the only way to become strong is to gain experience in practice.
Of course, even in software development, there are areas that are considered hard tech, and other know-how that cannot be gained through personal development. Still, it is a blessing that new fields of development methods are readily available in articles on the web and books.
The more motivated young people are, the more advantageous are software engineers
This is a structure that favors the relatively young. We often see cases where motivated young engineers are able to develop applications and web services on their own before they actually enter the workforce.
Despite the fact that in other industries, no matter how hard you work, you may not be able to increase your ability level in a small amount of time, in the IT industry, you can gain near-practical skills by contributing to personal development or open source projects.
Another plus for young people is that technology trends change easily; there may be plenty of working engineers who know what frameworks were popular five years ago, but now they may be starting out with a completely new framework or a different area that is trending.
If you think the IT industry is hard to learn, you should first think about this point properly. There are a certain number of software engineers who do programing for work, do programing during breaks, and do programing on weekends as a hobby. It is also true that you have to compete with such people.
One of the charms of the IT industry is that even if you are young or have little work experience, you may be able to outperform people who are working normaly depending on the amount of effort you put in. On the other hand, those who find it hard may be in the wrong field to begin with.
There are obviously legal barriers to entry for doctors, patent attorneys, etc., and software development is not the only field of engineering. However, monopoly qualifications can be at the discretion of the government, and supply and demand can be adjusted to the disadvantage of the worker.
Summary
- Software development is a labor-intensive business, and ability is easily reflected in compensation.
- Software development is a labor-intensive business, where competence is often reflected in compensation.
- If you are in an industry where the more motivated you are, the better off you are, and that's hard to do, go for a field where the barriers to entry are high.