글쓴분이 어떤 부분에 어려움을 느끼는지 이해가 가는데 반응들이 이상하네요. 현실에 다른 더 큰 어려움이 있다고 나열해봐야 크게 도움이 안되죠. 그건 주관적이니까.
https://whoisnnamdi.com/never-enough-developers/
왜 숙련된 SW엔지니어를 구하기 어려운지 분석한 외국글인데 한번 읽어보시죠.

엔지니어로 시작하더라도 중간에 비엔지니어 계열로 이직이 높음 - 새로운 기술로의 변환이 다른 직업보다 매우 빠른 편 - 2007 ~ 2019년 온라인 구인 정보 분석 - 컴퓨터 및 수학 분야는 47%는 하나 이상의 새로운 기술을 요구(ex. 2007년에는 생소했던 기술) - 교육, 법률 등 분야에서는 20% 인 것과 비교하면 아주 큰 변화 - 2007년에 쓰인 기술 중 16%는 2019년에 더이상 쓸모 없는 기술이 되기도 함. 이 역시 다른 직업과 비교하면 2배 정도. - 필요 기술이 빠르게 늘어나고, 또 빠르게 사라짐. - 즉, 경력을 쌓더라도 안정적이기 힘듬. 경력자도 커리어 초기에 존재하지 않았던 기술을 계속 배우고 성장해야만 함. - 빠르게 변하는 분야(ex.컴퓨터과학)의 직업은 다른 직군보다 경력 초반에 더 높은 급여를 받는 편이다. 하지만 시간에 지남에 따라 이 프리미엄이 빠르게 감소. 35~40세 이후로는 타 직군(사회 과학, 비지니스)과 비교했을 때 오히려 더 프리미엄이 적어짐. - 엔지니어링 : 초기에 고도로 숙련, 빠르게 변화하는 직군. 초기 경력 수입이 극대화. 하지만 시간이 흐를 수록 새로운 기술이 도입됨에 따라 가지고 있던 기술의 가치가 떨어지게 됨. 근로자가 경력이 쌓이더라도 계속 배워야 하는데 학습 효과가 줄어들게 되고, 경험을 이용한 수익이 낮아지게 됨. - 빠르게 배우는 사람들이 빠르게 빠져나간다. - 인지 능력이 높은 빠른 습득 능력을 가진 사람들은, 급변하는 분야에서보다는 안정적인 분야로 빨리 움직이는게 더 이득으로 보고 움직임. - 이러한 중도 이탈과 타 직군으로의 이직률은 일시적인 것이 아니며, 이 분야가 더 커질수록 증가할 것이다. 인력 풀을 늘리게 되면 임금이 낮아지게 되고 중간 이탈률 역시 높아지게 될 것. - 우리는 잘 하는 사람이 남고, 못하는 사람이 떠나길 기대하겠지만, 오히려 그 반대의 양상으로 진행 된다. 능력이 좋고 빠른 학습자들이 떠나고 있다. 이것은 소프트웨어 업계에 큰 기회 비용을 지불하게 만들고 있다. - 엔지니어 직군의 변화 속도가 느려지지 않는 이상 장기적으로 소프트웨어 개발자의 노동력 부족 현상은 계속 될 것이라 생각한다.