안녕하세요~ 아이언벨입니다.
우선 제 소개를 하면
전장(자동차)부폼 검사기 프로그램을 개발하고 있습니다.
주로 사용하는 언어는 LabVIEW(랩뷰)이며, 10년 조금 넘었네요.
급여는 평균연봉(22년 고용노동부직무정보시스템 발표자료)보다는 당연히 많이 받습니다.^^
근무시간은 올해 1월부터 8월까지 계산해보니 주당 42시간 26분입니다.
(2010년대 초에는 주 60시간 이상이였습니다.)

개발자 초기에는 근무시간도 길었고 급여도 평균 정도였습니다.
지금의 근무시간의 감소와 급여의 증가는 정부 정책의 변화도 있었지만, 제일 큰 변화는 제 개발실력이 향상이었습니다.
그럼 본론으로 넘어가서 프로그램 개발자로 살아남는 방법에 대해 이야기 하겠습니다.
1. 중급 프로그램 개발자 되기.
첫 주제가 프로그램 개발자로 살아남기의 핵심입니다.
3년 안에 중급 프로그램 개발자 되기!!
컴퓨터관련 학과 졸업 후 취업해도 99.9% 실무에 바로 투입되지 못합니다.(저는 본 적 없습니다.)
제가 다니는 회사의 경우 3개월 수습기간동안 잡무 없이 교육만 합니다.
커리큘럼이 존재하긴 하지만 학교처럼 책상에 앉혀두고 가르쳐주지는 않습니다.
매주 1가지 주제를 주고 혼자 공부하는 방식입니다. 이후 발표를 통해 피드백을 합니다.
1주(5일) 안에 1가지 주제를 마스터해서 발표를 할 수 있느냐? 절대 불가능합니다.^^; 그런 주제를 주는 게 아니라서요.
여기서 개인 능력에 따라 다르긴 하지만 70% ~ 80%정도 이해하고 발표가 진행됩니다.
60% 이하면 수습기간 후 작별인사 할 가능성이 매우 높습니다.
90% 이상 이해하는 신입사원도 있는데 나중에 보면 역시 잘합니다.
이렇게 약 10개의 주제로 발표를 하고 피드백을 받으면서 교육기간(수습기간)이 끝납니다.
3개월이면 약 13주 정도 되지만 명절, 휴가기간 등의 이유로 10개의 주제밖에 못합니다.
교육기간이 끝나도 실무에 투입되지 못합니다.
경우에 따라서 아주 낮은 난이도의 프로젝트가 있으면 가능합니다만
그것도 3년 정도의 경력자가 1주일 만에 끝낼 작업을 3주~4주 합니다.
여기서 개발자로 살아남는 키포인트 입니다.
아주 낮은 난이도의 프로젝트를 1주일만에 끝낼 수 있는 실력이 되어야 합니다.
그리고 회사는 학교처럼 가르쳐주지 않습니다. 스스로 공부해야 하죠.
그 공부시간은 하루 8시간(9시출근~6시퇴근)으로는 부족합니다.
꼰대처럼 들리겠지만 중급 프로그램 개발자가 될 때까지는 개인 시간을 희생하며 자기 개발에 노력해야 합니다.
그리고 중급 개발자가 되면 이후 대우는 다릅니다.
연봉협상 테이블에서 당당히 말할 수 있고, 이직도 얼마든지 열려있습니다.
신입개발자와 중급 개발자의 차이는 생각하시는 것보다 큽니다.
회사의 입장에서는 중급개발자가 최고입니다. 신입 개발자의 교육기간이라는 리스크가 없고, 고급 개발자처럼 많은 비용이 들지도 않기 때문입니다.
2. 적성에 맞는지 확인하자.
저는 프로그램 개발을 매일 수학문제 푸는 것과 비슷하다고 생각합니다.
하루에 수학문제 10개씩 풀어야 퇴근할 수 있습니다.
그런데 한 문제, 한 문제, 한 문제 푸는 것에 부담을 느낀다면 이 길이 아닙니다.
잘 안풀리고 풀더라도 답이 아닐 때는 괴롭습니다. 많이~
그런데 풀었을때의 희열이 있습니다. 이걸 즐기는 사람이 프로그램 개발자로 남습니다.
신입 개발자로 "참을 만 한데~"가 아니라 "오~ 재미있는데"가 되어야 개발자로 살아가면서 정말 힘든 고비를 넘길 수 있습니다.
괜히 "참을만 한데~"로 1~2년 시간 버리지 않으셨으면 합니다.
젊을 때의 1년은 소중한 시간입니다.
적성에 맞지는 않지만 노력하면 할 수 있다?
네 초반에는 노력하면서 버티기는 하지만.. 결국 첫 번째 고비, 두 번째 고비, 세 번째 고비를 넘다가 나이 30 넘고 그만두는 경우가 많습니다.
그런 친구들 보면 마음이 아픕니다. 잡을 수 도 없습니다. 적성에 맞지 않아 힘들게 지내는데 버티라고 할 수 없었습니다.
3. 벤츠마킹 하라.
개발자로 지내다 보면 분명 눈에 띄는 선배 개발자가 있습니다.
친하게 지내세요~ 그리고 따라 하세요.
그 개발자의 코드를 따라 하라는 뜻이 아닙니다. 개발 과정을 따라 하라고 하는 겁니다.
프로그램 설계부터 고객과의 대응 방법 그리고 완료 보고까지의 프로세싱 과정을 배울 것이 많습니다.
4. 프로젝트 설계에 많은 시간을 할당하라.
프로젝트를 받으면 바로 코딩부터 하는 개발자가 있습니다.
매우 간단한 프로젝트 거나, 개발자가 천재이거나 둘 중 하나 일 겁니다.
그런데 해당사항이 없으면 노트에 팬을 들고 프로젝트 설계부터 하는 것이 오히려 프로젝트 완료 시간을 단축시킵니다.
시간 대비 완성도 또한 더 높아집니다.
프로젝트에 새로운 기술이 있다면 그 기술의 문서부터 정독하고 사용해 봅니다.
그리고 사용되어야 할 모든 기술에 대하 이해가 끝나서야 프로그램 설계를 시작합니다.
개발기간이 3달 정도 되는 프로젝트에 1달 정도를 프로젝트 설계에 사용하기도 합니다.
5. 완료된 프로젝트 리뷰하라.
혼자 하는 경우도 있고 부사수와 같이 하는 경우도 있고 필요에 따라서는 부서 인원을 두고 리뷰를 합니다.
공부로 치면 복습입니다.
처음 설계와 완료된 프로젝트의 어떤 점이 변했고 변한 이유는 무엇인지 다시 한번 복습합니다.
리뷰 후 내 머릿속에 해당 프로젝트가 오랜 시간 기억에 남아있을 것입니다.
유지/복수 측면이나 해당 프로젝트의 업그레이드가 진행된다면 더 빠른 처리가 가능할 것입니다.
6. 공부하자.
첫 번째와 비슷한 맥락입니다.
중급 프로그램 개발자가 되어도 책을 보고, 새로운 기술을 찾고, 오픈소스를 분석하고
시간이 남을 때는 항상 새로운 것을 해야 합니다.
저도 아직 할 수 있는 것보다 배울 것이 훨~씬 많고 더 늘어나고 있습니다.
시대의 흐름에 따라가기 위해 개발자라면 어쩔 수 없는 숙명입니다.
추석 전에 해야 할 일이 마무리되어 글 작성할 시간이 있네요.
프로그래머, 프로그램 개발자가 되기 위해 도움이 되었으면 합니다.
'Engineer Story' 카테고리의 다른 글
| [애드센스] 티스토리 구글 애드센스 승인 후기 - 게시글 고작 10개 (1) | 2022.12.15 |
|---|
댓글