주니어·미드 레벨 엔지니어에게 조언: 오늘날 취업 시장의 현실
Source: Dev.to
시장이 변했다 — 기대치를 조정하라
당신이 진입하려는 채용 시장은 5~7년 전과 동일하지 않다. 기본적인 애플리케이션을 만드는 것만으로는 이제 인상적이지 않다. “X를 만들었다”는 말보다 다음이 더 중요하다:
- 어떻게 동작하는가
- 왜 동작하는가
- 어떻게 실패하는가
기업들은 채용 인원을 줄이고 각 인력에게 더 넓은 영향을 기대하고 있다. 이는 다음에 대한 합리적인 대응이다:
- 비용 압박
- 보다 성숙한 툴링
- 더 빠른 납기 기대
예전에는 중급 수준으로 여겨졌던 것이 이제는 많은 주니어 엔지니어에게 기대된다.
일반적인 기대사항
- 프론트엔드와 백엔드 모두에서 작업할 수 있는 편안함
- 익숙하지 않은 코드베이스를 읽고 이해할 수 있는 능력
- 로컬 버그뿐 아니라 프로덕션 이슈 디버깅
- 배포와 환경에 대한 기본적인 이해
- 최소한의 감독으로 기능을 엔드‑투‑엔드로 배포
튜토리얼만 따라하거나 패턴을 이해하지 못한 채 복사하는 수준이라면 어려움을 겪게 될 것이다.
고용주의 선호도
고용주들은 이제 다음과 같은 엔지니어를 피한다:
- 단계별 지시가 없으면 코드를 작성하지 못함
- 설계 결정이나 트레이드오프를 설명하지 못함
- 생성된 코드가 만든 문제를 디버깅하지 못함
- 요구사항이 불명확하거나 불완전할 때 무너짐
시스템, 실패, 제약을 이해하는 엔지니어는 여전히 수요가 많다. 많은 프로젝트를 가지고 있는 것이 목표가 아니라, 하나 혹은 두 개의 진지한 프로젝트를 갖는 것이 목표다. 강력한 프로젝트는 다음을 보여준다:
- 명확한 설계 결정과 트레이드오프
- 엣지 케이스에 대한 적절한 처리
- 사려 깊은 오류 처리와 가시성
- 성능 및 확장성 고려
- 무엇이 깨졌고 어떻게 고쳤는가
프로젝트가 한 번도 실패하지 않았다면, 깊이가 충분하지 않을 가능성이 크다.
고용주가 가치 있게 여기는 것
- 장기적인 문제를 만들지 않고 작업을 마무리하는 것
- 위험을 조기에 식별하는 것
- 배포를 하지 말아야 할 시점을 아는 것
- 다른 사람이 이해하고 유지보수할 수 있는 코드를 작성하는 것
판단 없이 빠른 속도는 오히려 liability(부채)이다.
고용 가능성을 유지하는 방법
- 할당된 티켓을 넘어 책임을 지는 것
- 자신의 작업이 비즈니스에 미치는 영향을 이해하는 것
- 릴리즈 후에도 자신이 만든 것을 지원하는 것
- 허가를 기다리지 않고 지속적으로 학습하는 것
가장 안전한 엔지니어는 가장 똑똑한 사람이 아니라 가장 신뢰할 수 있는 사람이다. 엔지니어는 다음과 같은 태도를 가져야 한다:
- 시스템적으로 사고하기
- 빠르게 적응하기
- 작업을 제대로 마무리하기
반면 피해야 할 것은:
- 피상적인 지식
- 도구에 과도하게 의존하기
- 손잡이 없이 작업할 수 없는 능력 부족
엔지니어가 되기에 나쁜 시기가 아니라, 준비되지 않은 사람이 되기에 나쁜 시기다.