15년차 개발자가 보는 취업시장 그리고 변질된 국내 교육업계
유튜브 댓글을 읽다가 요즘 IT불황과 취업시장의 핵심을 관통하는 댓글을 발견하여 공유합니다.
국내 IT시장 한정, 왜곡된 개발자 양산으로 IT개발의 본질은 잃고
진짜 시니어는 사라지고 가짜 역량만이 판치는 업계, 앞으로 IT업계 전체의 부도와 폐업으로 이어진다는 내용입니다.
저는 최소 15년 이상 개발 업계의 불황기부터 지금까지 오직 개발만을 이어온 개발자입니다. 크리에이터님과 결론은 같지만, 비슷하면서도 전혀 다른 과정을 통해 그러한 결과를 도출하게 되었습니다.
개발 업계가 불황으로 향하는 더 근본적인 이유는 수익을 내지 못하기 때문입니다. 이러한 상황이 같으면서도 다른 이유는, 현재의 개발자 취업 위기가 한국에만 국한되어 있다는 점입니다. 더 정확히 이야기 하면 코로나 소프트웨어 붐 이후에 기업만 해당되죠. 일반적으로 업계가 전반적으로 수익을 내지 못하더라도 정상적인 방향으로 간다면, 다수가 실패하더라도 일정 비율은 항상 그 모든 손해를 채울 만큼의 수익을 내야 하고, 그것으로 업계가 유지되거나 성장하는 것이 정상적인 구조이기 때문입니다.
이런 상황이라면 설령 다수가 실패하더라도 투자할 확실한 가능성이 생기고, 그 신뢰를 기반으로 더 큰 투자가 이루어지며, 이 투자에는 실패한 회사도 포함되어 전체 규모의 성장과 함께 성공하는 회사도 늘어나게 됩니다.
현재 코로나 소프트웨어 붐 이후 5년에 가까워지고 있는데, 이 시점이 중요한 이유는 일반적으로 어떤 대규모 개발도 5년을 넘는 경우가 거의 없기 때문입니다. 즉, 지금이 투자와 수익의 총량이 어느 정도 균형을 이루어야만 추가적인 신뢰가 유지될 수 있는 분기점입니다. 그런데 업계를 보면 아직도 시작 단계와 큰 차이가 없는 저조한 수익 상태를 유지하고 있는데 반해, 덩치만 커져서 더 많은 투자 없이는 유지될 수 없는 구조가 되었습니다.
이것에 대해 굉장히 의아했습니다. 제 경험으로는 일반적으로 운으로라도 성공 사례가 나와서 유지는 되어야 하는데 거의 그러지 못하고 있기 때문입니다.
최근 이직을 알아보면서 이러한 현상의 원인을 파악하게 되었습니다. 과거에도 개발을 돕는 언어나 툴은 존재했지만, 그럼에도 개발자는 더 기계친화적인 언어부터 차근차근 배우고, 이를 통해 단순히 프로그램 하나가 아닌 시스템과 로직, 그리고 개발 목표가 되는 창작물에 대한 전체적인 이해가 동반되지 않는 사람을 개발자로 채용하는 일은 드물었고, 시니어급을 그런 사람으로 뽑는 경우는 전혀 없었습니다.
이런 시니어 핵심 개발자를 메인프로그래머라고 불렀는데, 이런 존재가 없으면 부분적으로는 개발이 될 수 있을지 몰라도 엔지니어링적인 전체 방향을 잡지 못해 개발이 완성되지 않습니다. 마치 조타수 없는 배가 산으로 가는 것과 같습니다.
이런 시니어급은 기본적으로 단기간 교육이 불가능하고 재능도 많이 타서 양산이 불가능합니다. 일반적으로 시니어급이 재능 있는 사람을 발굴해 도제방식으로 1대1 코칭을 하여 오랜 시간 정성을 들여 키우는 것이 일반적이었습니다.
하지만 소프트웨어 붐 이후로 급격하게 규모만 성장하게 되어 시니어급이 늘어난 규모만큼 엄청나게 부족하게 되었습니다.
실제로 개발취업교육집단에서 공부한 친구의 경험에 따르면, 이러한 교육기관에는 제대로 프로그래밍을 공부한 시니어급이 없고 만들 방법도 없습니다. 때문에 강사를 단기 교육을 끝낸 사람 중 취업에 실패한 일부를 선발하고, 그렇게 교육받은 사람이 다시 강사가 되는 주니어가 주니어를 만드는 악순환이 발생하게 되었습니다.
이 과정에서 교육은 겉핥기식으로 변질되고 많은 개념과 이론들이 왜곡되고 오염된 상태로 전파되었습니다. 이렇게 양성된 개발자들이 실적을 낼 리 만무하고 기업들은 실적 압박에 시달리게 됩니다. 기업 리뷰를 보면 서로 다른 기업인데도 같은 기업인것처럼 회사에 시니어가 없어 너무 힘들다는 글들이 계속 올라오고 있습니다.
여기까지가 현재 상태의 이유라고 생각됩니다. 그리고 더 중요한 것은 그 이후인데, 이는 제가 이번 이직을 알아보면서 알게 된 충격적인 실태였습니다.
기업들은 실력이 있으면서도 채찍질하면 달리는 말 잘 듣는 경주마 같은 시니어 개발자를 원하게 됩니다. 그것도 실적 부진으로 좋은 조건을 제시하지 못하는 상황에서 말입니다. 하지만 크리에이터님께서 말씀하신 것처럼, 능력 있는 시니어 개발자들은 엔지니어보다는 창작자에 가깝고 덕후기질이 강해서 좋은 조건을 제시해도 갈까 말까 한데, 이런 고압적인 태도의 기업에는 갈 생각이 없습니다.
이때 많은 개발자를 기업에 공급하는 데 성공하여 정치적 입지가 충분해진 개발취업교육집단이 그럴듯한 해결책을 내놓게 됩니다. 이들의 해결책은 시간과 자원을 들여서라도 기계친화적 언어와 구조를 이해하는 진정한 시니어 개발자를 육성해 기업의 체질 계선을 도와 결과물이 나오게 돕겠다는 것이 아닙니다. 대신 기업의 업무에 특화된 인간친화적 언어와 시스템을 여러 개 배우게 하여 이들을 시니어 또는 풀스택 개발자로 둔갑시켜 판매하는 계획을 세웁니다.
거기서 나아가 개발취업교육집단이 질문지와 답지를 만들어 기업에는 질문지를, 취업자에게는 답지를 제공함으로써 마치 개념을 정말로 이해하고 있는 것처럼 보이게 만드는 연극을 하기로 했습니다. 실제로 지금 여러 회사의 채용을 알아보면 서로 다른 회사임에도 똑같은 질문을 하고 똑같은 답변을 원한다는 것을 쉽게 알 수 있습니다.
이는 기존의 양산형 주니어 개발자를 뽑는 것보다 실적이 개선되는 듯한 모습을 보여줍니다. 실제 기계적 이해도를 무시하고 툴에 집중하여 이미 다 배운 상태로 들어갔으니, 툴로 해결 가능한 초반에는 더 실적이 좋아 보이는 것이 당연합니다.
하지만 근본적인 차이가 없어서 이 방법도 툴로 해결할 수 없는 문제가 발생하면 결국 양산형 주니어 개발자를 뽑을 때와 다를 바가 없게 될 것입니다. 마치 양산형 주니어 개발자 채용 시 많은 엔지니어들이 했던 경고를 무시했던 것처럼, 지금은 일시적으로 실적이 개선된 것처럼 보이니 이 고집을 꺾을 생각이 없어 보입니다.
그래서 저와 제 지인들은 과거의 사례와 경험에 비추어 볼 때, 곧 아타리 쇼크와 같은 신뢰 붕괴 현상이 발생하여 이것이 체질 개선이 아닌 업계 전체의 부도와 폐업으로 이어질 것이라고 생각하고 있습니다.