“어떤 개발자를 구하시나요?”
기업들에게 물었습니다.
개발자가 없다고 하니, 솔직한 의견을 듣고 싶었습니다.
멘토단이야 이미 알고 있지만,
그래도 여러 기업들이 이야기해주면, 좀 더 가깝게 느껴집니다.
1. 42 과정을 하면 취업이 될까?

“기업은 학교를 왜 찾을까?”
“에꼴42″라서?
No, 아닙니다 !!!
기업은 “에꼴42″에 대한 관심이 없습니다.
우아한 테크코스도, SAFFI 도, 소프트웨어 마에스트로에도
아무런 관심이 없습니다.
기업은 학교가 아니라 자기 회사에 대해 관심이 있습니다.
사업은 생존이기 때문입니다.
직원들 월급을 부지런히 벌어야 합니다.
사업에 도움이 된다면, 누구든 데려다 씁니다.
“에꼴42를 하면 어디에선가 뽑아준대.”
… 그런 기업은 없습니다.
“에꼴42를 해서 이런 실력을 기를거야.”
넵. 그런 사람을 찾는 곳은 많습니다.
제 주변에도 많습니다.
그런데 어떤 실력을 길러야 하는걸까?
답변이 하나만 있는 건 아닙니다.
세상이 넓으니까 선택도 다양합니다.
그래서 기업들에게 물었습니다.
2. 개발자, 진짜로 부족한가요?
(응답한 기업들)

30 여개 기업이 대답했습니다.
네카라쿠베급? – 있습니다.
대기업? – 있습니다.
중견기업, 중소기업, 스타트업? – 모두 있습니다.
이런 질문들을 했습니다.
(1) 개발자 부족으로 어려움을 겪고 계신가요?
(2) 개발자 부족의 원인이 뭘까요?
(3) 어떻게 개발자를 채용하시나요?
(4) 전공자를 채용할 땐 어떤 걸 보시나요?
(5) 융합전공자는 채용하시나요? 채용할 땐 어떤 걸 보시나요?
(6) 비정규과정은 채용하시나요? 채용할 땐 어떤 걸 보시나요?
– (국비 과정, 민간 교육과정 등등)
(7) 공통질문 : 교육과정에 보완할 게 있다면 어떤 것들일까요?
배려심이 듬뿍 담긴 기업들이 있습니다.
까칠함이 돋아 있는 기업들도 있습니다.
좀 많이 기대하는 기업들도 있습니다.
모두 맞닥드려야 할 세상입니다.
가능한 원문 그대로 옮겨봅니다.
(설문시작.)
2.1. 개발자 부족 관련, 어떤 어려움을 겪고 계신가요?
- 지원자는 많지만, 일하는 역량(사고방식,문제인지,문제해결)이 많이 부족함
- 웹 개발자는 많음, 매번 지원자가 넘쳐 남.
- 반면 AR/VR 관련 인력은 월 지원자 수 3명 이하 수준.
- 전공. 비전공의 문제가 아니라, AR 분야에 관심 있는 인력 자체가 많지 않음.
- 우리 기업은 소수 정예라 오히려 덜 뽑으려고 노력합니다.
- 인력 부족에 대해 크게 체감하지 않습니다.
- 메신저, 채팅 분야는 인력은 부족합니다. 구하기가 힘듭니다.
- 돈만 많이 준다면 안 모자랍니다.
- 오래 전부터 경력자 채용이 어렵다는 것을 충분히 알고 있어 신입 채용을 기피 하지 않습니다.
- 그런데 (학교 수업 기준) 기본기가 잘 된 학생들이 없습니다.
- 비 판교 쪽, 특히 구로,가산 디지털단지 쪽은 상대적으로 채용이 어렵습니다.
- 개발자(찍어내는 개발자들)라고 말하는 사람들은 많습니다. 하지만, 회사 기준에 맞는 개발자 구하기는 어렵습니다.
- 부족한 것이 아니라 역량 있는 사람이 없습니다.
- 최근 개발직군 내부의 급여 및 처우가 큰 폭으로 상향 조정 중입니다(인공지능, 빅데이터 부문)
- 채용을 1.5배 이상 오픈 했지만, 검증을 떠나 일단 모집 자체가 쉽지 않음.
- 중소기업은 대기업에 가기 위해 거쳐가는 기관이라는 인식 때문에 채용이 훨씬 더 어려움.
- 높은 수준의 내.외부 프로젝트, 기술 수준, 업무 환경 조성에 노력하고 있음
- 원하는 인재 채용이 어렵습니다.
- 일반 개발자는 많지만 AI/빅데이터 분야는 지원자 자체가 부족합니다.
- Container 기술 등 아키텍처 영역도 부족하여 내부 육성에 의존하고 있습니다.
- 백엔드, 프론트엔드, QA , 데이터 관련 등 전체적인 인력이 부족합니다.
- IT 회사가 아닐 경우 개발자 뽑기가 갈수록 어렵습니다.
- 2020년 5년 이상 프론트,백엔드 경력자 채용이 20% 미만이었습니다.
- 부족 인원은 2년 이하 신입개발자로 채용, 2-3개월 단기 교육 후 실무에 투입 중입니다.
- 시스템 소프트웨어 분야, 멀티미디어 분야 등 세부 분야는 연중 채용 시도하고 있으나, 적절한 인력이 없습니다.
- 블루투스 오디오 분야, 5년차 시스템 엔지니어를 연봉 1억 수준에서 구하고 있으나, 6개월 간 못 찾고 있음.
- 우리회사는 지원인력 대부분이 교육센터 출신입니다.
- 비전공 지원자 80% 이상, 최근 2년간 이직 1명
- 핵심인력 유지를 위한 처우개선 예정이며, “청년내일채움 공제”가 큰 도움이 됩니다.
- 비전공 지원자 수가 크게 늘었고, 직원들의 이직이 잦아졌습니다.
- 신입직원보다 숙련된 개발자의 부족을 크게 느낍니다,
- 예전에는 비숙련자의 경우 회사업무를 통해 숙련자로 발전했지만,
- 현재는 개인화 분위기로 기존 육성방식이 불가능해졌습니다
- 회사에 대한 충성도가 없으니, 회사도 육성해야 할 이유가 없습니다.
- 당장은 초급자라도 구하지만, 숙련된 개발자는 정말 구하기 어렵습니다.
- 백앤드, 프론트엔드, 모바일 개발자 등이 부족합니다.
- 신규 프로젝트는 많은데 개발자 구하기는 어렵습니다.
- 중소기업에서는 경력자를 아예 구할 수 없습니다.
- 지난 수년 간 도저히 불가능했습니다.
- 이젠 외국 인력 고용으로 방향을 전환 중입니다.
- 지원자 대부분, 기술에 대한 표면적인 이해만 하고 있습니다. 수준 미달로 고용을 꺼리게 됩니다.
- 최근 업계 연봉(인공지능)이 크게 올라, 핵심 인력 유지가 어렵습니다.
- 회사 수준을 충족시킬 수 있는 개발자는 절대적으로 부족합니다. (신입 또는 경력 모두)
- 지원자가 자체가 적고 지원자를 봐도 마땅한 인력이 없습니다.
2.2. 왜 개발자가 부족해진 걸까요?
- 생각하고 행동하는 방식이 부족합니다.
- 원인은 “주입식 교육”이라고 생각합니다.
- AR쪽은 진입 장벽이 높다고 생각하는 경향이 있고,
- 무엇보다도 Unity 를 다루고 C# 언어를 사용해야 하는데 주류 언어가 아니다 보니 지원자가 귀합니다.
- 항상 반복 되는 문제인 듯 합니다.
- 수요에 비해 공급이 훨씬 적고, 특히 기업에서 원하는 “잘하는 개발자”들은 훨씬 적습니다.
- 인력 공급이 적은 이유는 국민들의 개발자에 대한 직업 인식이 아직 많이 낮고,
- 정책적으로도 과학, 공학을 밀어주는 분위기가 아니기 때문에, 과학고 학생들까지 의대에 진학하는 게 현실입니다.
- 두번째로는 IT 기업 문화가 문제입니다.
- 처우는 예전보다 훨씬 좋아졌지만, 야근 + 주말 특근까지 노예처럼 부리는 회사들이 아직도 많습니다.
- 취업을 해도 “잘 하는 개발자”로 성장하기 전에, 힘들어서 그만두게 되는 경우도 많습니다.
- 정책적으로 기초과학, 공학에 대한 투자를 늘리고 개발자들이 자유롭게 도전할 수 있도록 규제를 완화하고
- 전문직과 비슷한 수준으로 처우가 높아지고, 개발자를 갈아 넣는 나쁜 문화가 사라지고,
- 컴퓨터 과학에 대한 교육을 더 넓히지 않으면, 인공지능 시대에 개발자 찾기는 더 어려워질 것이라 봅니다.
- 국내 개발자 수요가 대폭 늘어남
- 한국 내에서는 대우를 잘 안 해줘서, 고급 인력은 해외로 감
- 개발은 시간을 투자해서 경력을 쌓아야 검증이 되나 그럴만한 회사가 별로 없음
- 석사,박사는 전혀 의미가 없지만, 석사 박사를 하는 바람에 기대치가 높아짐
- 연봉이 낮게 유지된 지 오래되었기 때문임. 오히려 대기업 생산직이 나음
- 양성 되는 인력 자체도 작고, 기업에서 필요로 하는 실무 스킬이 부족함.
- 질적 수준이 낮음 (그냥 기술만 외운 경우들), 그리고 소프트웨어 관련 기업이 증가함
- 초급 개발자 배출은 많으나 스킬과 자질이 부족함.
- 공급 측면 : 코딩교육을 받은 엔지니어의 졸업 인원이 적음. 클라우드, AI, Bigdata은 더 적음
- 수요측면 : 클라우드 기술 및 AI, Bigdata 분야의 SW 수요증가
- 실제 기업에서 필요로 하는 실무 스킬 부족
- 양적으로는 많이 배출되나 질적 수준이 낮음
- 기업에서 바로 사용할 수 있는 기술력이 부족함
- 기업 내부에서 육성하지 않으면 어려운 환경
- 경력직 채용이 해마다 늘고 있는 추세지만, 전문가 찾기가 어려운 것이 현실
- 낮은 임금
- 수도권집중방지관련 법률로 대학 정원을 늘리지 못한 것,
- 사회 안전판의 미비로 생계의 두려움을 느낀 우수한 학생들이 공무원과 의대로 몰림.
- 대기업 중심의 경제 환경으로 갈만한 중견기업이 줄어듬.
- 컴퓨터 관련학과 전공 인력 자체가 적음
- 기업에서 필요로 하는 실무스킬 부족
- 사설학원 교육자는 양적으로는 풍부하나, 공학적 지식이 매우 부족함
- 시장에 개발자의 양은 많음.
- 그러나, 일 시키면 할 수 있겠다는 확신을 주는 사람 찾기가 매우 어려움.
- 즉, 찾는 분야의 구현 경험(경력)이 있거나 구현 역량을 기대할 수 있는 사람 만나기가 매우 어려움.
- 따라서, 시장에 많은 구직자는 많지만 개발자를 구할 수 없음.
- 초급 개발자 여러 명이 고급 개발자 한 명을 못 쫒아옴
- 초급 개발자 여러 명은 관리 노력, 비용 관점에서 낭비가 심하고, 개발 결과는 잘 나오지 않음.
- 기존에 개발자가 필요 없던 산업 분야가 IT기술을 도입하면서 개발자가 부족해지게 된 것 같다.
- 낮은 실력 대비 높은 처우를 기대. 채용을 포기
- 찍어내는 교육 센터 프로그램의 부실
- 지원자들의 기본 개념 부족
- 최근 소프트웨어 인력 공급이 크게 늘었으나, 대부분 단기 교육 과정으로 경력 2년차 수준을 선호하는 업계 사정과 괴리.
- 절대적인 수는 부족한 것으로 보이지는 않음.
- 양적으로는 많이 배출되지만 질적 수준이 낮습니다.
- 중소기업의 경우, 복합문제해결능력+기술적 능력+체계적 역량이 필요하지만,
- 면접을 보면 콘텐츠 능력+인지 능력은 나아졌지만, 나머지는 예전보다 떨어집니다.
- 아예 직업 의지가 없는지 구분하기도 어렵습니다.
- 신규 인력보다 대리급 이상의 경력자를 찾다 보니 그런 것 같습니다.
- 근본적인 이유는 국내에 SW 시장이 없기 때문.
- 시장이 없어 기업이 생존하기 어려우므로 이민 가거나, 타직종 전환사례가 많음.
- 2,000년대부터는 컴퓨터공학과에도 우수한 학생들이 입학하지 않음.
- 소프트웨어 개발에서 창의력을 효과적으로 발휘할 수 있는 경우는 10년 이상의 실무 경력이 필요함
- 단기적으로는 대안이 없어 보임.
- (10년 정도의 경험이 있어야 개발과 기획업무의 밸런스를 겨우 맞출 수 있음)
- 양적으로는 많이 배출되나 질적 수준이 낮음.
- 대학에서 양성 되는 인력 자체가 적음
- 실제 기업에서 필요로 하는 실무 스킬 부족
- 개발 인력의 절대적인 숫자보다, 기업에서 원하는 수준의 개발자 수가 많지 않습니다.
- 문제 해결 능력이 좋은 , 협업을 잘하는 , 새로운 기술에 대한 호기심, 좋은 학습 능력, 논리적 사고, 리더십 등을 원하고 있는데.
- 이런 걸 만족 시키는 개발자는 거의 없습니다.
- 최고 개발자 몇 명으로 만들어가는 시스템(서비스)이 아니라
- 평범한 개발자들(이러한 개발자수는 적지 않다고 생각됨)이 함께 만들어가기 위해서
- 구조 설계, 프로세스, 개발 도구 활용, 등에 대한 교육이 필요하다고 생각됩니다.
- 중급 이상 인력들의 공급이 수요를 따라가지 못함.
2.3. 전공자 채용시
전공자란 소프트웨어 및 컴퓨터 기초이론을 가르치는 대학과정을 이수하는 학생들을 말합니다.
(1) 중요하게 보는 것이 무엇인가요?
- 컴공 이해도/ 프로그램 개발경험/ 적극성/자기주도
- 기술에 대한 열정, 프로젝트 진행시 얻은 경험치를 솔직하게 얘기할 수 있는 것.
- github 기반의 협업에 대한 이해도가 있는지
- 측정, 알고리즘 코딩 테스트가 아닌, 진짜로 자신가 짠 코드를 논리적으로 설명할 수 있는지.
- 그 코드를 함께 보며 코드 리뷰가 가능한지 등등.
- 컴퓨터 공학에 대한 열정, 호기심, 그에 어울리는 실행력.
- 문제 해결 능력, 기본 코딩 디버깅 실력, 영어 읽기 실력
- 전공 수업 이수여부
- 본인이 주체적으로 개발을 하는가
- 서비스를 혼자서 다 만들어봤는가
- 그 때 그 때 고민을 하였는가?
- 대학교 졸업생이라면 (실무 수준이 아니라도) 대학 4년치 정도의 경력은 보여주면 좋겠다.
- 컴퓨터 공학에 대한 이해도, 직접 프로그램을 개발해본 경험
- 전공에 대한 이해도, 실제 코딩 역량. 오픈소스 활동
- 실력보다 적극성 끈기와 인내
- 기본적인 본인의 코딩 자신감
- 오픈소스 기여 발표 활동
- 새로운 문제 받아들이고 해결하는 프로세스 및 경험
- 실제 코딩 역량,
- 직접 프로그램 또는 서비스를 개발해보고 운영해 본 경험,
- 우리 회사에 대한 관심과 적극성 등 태도
- 신입 사원은 자세, 의지를 많이 보고 있지만, 그래도 기본역량은 갖추어야 함
- (코딩테스트는 이제 변별력 없음, 문제가 단순해서 대부분 100점)
- 이력서에서는 주로 경험했던 실제 사례로 판단하고 있음
- 오픈소스 개발 경험
- 태도
- 개발에 임하는 진지함, 기본
- 실제 코딩 역량
- 컴퓨터 공학에대한 이해도/직접 프로그램을 개발해 본 경험
- 포트폴리오(프로그램을 통해 완성시켜 본 경험)
- 오픈소스,블로그 등에 기여한 이력
- 컴퓨터 공학 기본 이론
- 기본적인 전산학에 대한 이해도, 오픈소스나 개인 프로젝트 등의 개발경험
- 개념에 대한 이해 정도
- 직접 개발해본 경험
- 개발에 대한 적극성
- 긍정적인 성격
- 컴퓨터 공학 이론 이해도
- 코딩 역량
- (규모에 상관없이) 개발 경험
- 개발자 100명에게 질문을 합니다.
- 앱개발자라고 하셨는데 런칭한 앱이 있으세요?
- 100명중 10명이 해봤다고 답합니다.
- 10명에게 또 다시 질문합니다.
- 런칭한 앱을 3개월 이상 유지보수 해보신 경험이 있으세요?
- 3명이 해봤다고 합니다.
- 3명은 묻지마로 채용합니다.
- 신입사원의 경우 창작물보다 내부 소스 수정을 맞기는 경우가 더 많습니다.
- 전반적으로 본인 일에 욕심이 있는지를 확인하고
- 주변 사람과 커뮤니케이션이 가능한지 더 많이 고려합니다.
- 코딩테스트, 인턴십 수행여부, 인성
- 신입의 경우: 학교 수준 50% + 본인의 관심사 (우리가 개발하는 것에 진정 동의하는지) 50%
- 경력자 경우: 본인의 프로그램 개발 결과물 50% + 그 프로그램의 소비자 반응 50%”
- 컴퓨터 공학에 대한 이해도 / 직접 프로그램을 개발해본 경험
- 컴퓨터 공학에 대한 이해도 / 직접 프로그램을 개발해본 경험 / 해커톤 대회 경험
- 문제 해결 능력
- 논리적인 사고
- 컴퓨터 공학 기본에 대한 이해도
- 프로그램(코딩) 역량
- 협업 (커뮤니케이션) 능력
- 코딩 테스트 등을 통한 실제 코딩 역량 / 직접 프로그램을 개발해본 경험
(2) 전공 교육에서 개선했으면 하는 점
- 트렌디한 기술보다 자료구조나 운영체제론, 데이터베이스 등 심화 과정이 있어
- 학생들이 정말 재미있게 공부할 수 있으면 좋겠음
- github, 코드리뷰 등에 이해도가 높은 학생이 드문 편.
- 학점 관리와 포트폴리오에 집중하지만, 개발 자체에 대한 관심은 낮음.
- 최근 인공지능 기술의 변화 수준에 맞는 인공지능 교육이 너무 부족함.
- 지금도 잘하고 있다고 봅니다.
- 프로그래밍을 할 줄 아는 교수가 없습니다.
- 학생들이 포트폴리오는 좋은데, 컴퓨터 구조, 운영체제 등 컴퓨터 공학에 대한 기본 지식이 부족합니다.
- 학교 수업 외 프로젝트를 진행할 수 있는 과정이 있으면 좋겠습니다.
- 학생들이 인턴 활동을 해볼 수 있게 좀 더 적극적인 지원을 해주면 좋겠습니다.
- (예 학교에서 회사와 연결해서 학생들에게 인턴 자리 제공)
- 탄탄함 기본기를 갖춘 학생이 없음.
- 스스로 기본기도 못 키우고, 트렌드도 못 따라감.
- 문제를 풀고자 하는 집요함이 없다.
- 중급 이상의 코딩 실력
- 실제 개발 할 때 필요한 컴퓨터 공학에 대한 지식의 함양이 필요함.
- Stack Overflow를 보고 단순히 문제만 푸는 게 아니라,
- 근본적인 문제 해결 방법을 고민하는 훈련 필요
- 이론 교육에서 프로젝트 형으로 바꾸어 많은 경험을 하게 해줘야 함.
- 웹 기반 기술 교육(프론트엔드)
- 학교에선 Git, Issue Tracking, Code Review 등, 기본적인 협업 방법을 가르치지 않는다.
- 소프트웨어와 하드웨어, 네트워크의 기본에 대해 잘 가르치지 않은 채 바로 코딩으로 들어간다.
- 컴퓨터 구조, 운영체제 등 컴퓨터 공학에 대한 지식이 부족
- 오픈소스(GitHub), 코드리뷰 등 최신 개발 트렌드 이해 부족
- (1) 현장에서 필요한 기술을 가르친다는 이유로, 필수 부분을 생략하거나 선택으로 만드는 경우가 많음.
- 기반이 부실한 전공자로 만들어, 발전 가능성이 낮은 인력이 됨.
- (2) 개발 툴, 언어, 라이브러리 등은 수업을 통해 직접 교수가 가르치기 보다는
- 실습 프로젝트를 통해서 학생들이 스스로 선택 자가 학습하는 경험을 쌓게 해야 함.
- 그리고 다양한 개발 경험, 완성의 경험이 필요함
- 실제 프로젝트 경험 부족
- IT 기본 개념에 대한 이해를 높이는 교육 필요
- 하나의 언어에 대해 혼자서 뭔가를 만들 수 있을 정도는 되도록 해야 함.
- 과거에는 대학이 주요 소프트웨어 교육기관으로 동작하면서, 개발에 직접적으로 관련된 지식을 요구하는 경우가 많았기 때문에, 전공자의 실무 능력 부족이 주요한 문제로 꼽혔음.
- 그러나 현재는 오히려 대학 밖의 인력 공급이 늘면서, 대학이 이론 교육의 중심이 되어야 하는 함.
- 전공자인데 이론이 부족하면, 비전공자 대비 강점이 없어 채용을 포기함. (기본 능력은 여전히 필요)
- 이론보다 프로젝트 위주의 코딩 경험. 학과 숙제, (기한이 있는) 프로젝트도 항상 코딩 프로젝트 위주로 하면 좋겠음.
- 시장에 개발자는 대략 세 부류가 있다고 보임
- 코더 : 소프트웨어가 버그 없이 잘 동작하도록 만드는 사람
- 프로그래머 : 소비자가 원하는 게 무엇인지 알고 만드는 사람
- 아키텍트 : 추후 대규모 시스템으로 확장을 염두에 두고 만드는 사람
- 대학에서 코더를 양성하면 학원과 다를 것이 없음 (차라리 학원이 더 나음)
- 난이도가 낮고, 규모가 작아도, 프로그래머와 아키텍트 경험을 쌓게 해주어야 함.
- 그래서 코딩을 할 때 왜 읽기 쉽도록 짜야 하는지,
- 왜 Agile 방식으로 개발할 필요가 있는지,
- 왜 설계가 중요한지 약하게라도 경험하게 해주어야 함.
- (CS기초가 아니라) 소프트웨어 개발에 대한 지식 부족 (Architecture / OOP 등)
- 실제 개발에 사용하는 프레임워크나 라이브러리 등 실무 경험이 부족
- 컴퓨터 공학 기본에 대한 지식 (컴퓨터 구조, 데이터 구조, 알고리즘, OS, 데이터베이스, 네트워크)
- 최신 기술 트렌드에 대한 이해와 활용 경험
2.4. 융합 인력 채용시
융합 인력이란, 대학 내 “소프트웨어 융합학과” 과정을 이수한 학생들을 말합니다.
(1) 융합 인력을 채용할 때 가장 중요하게 보는 것
- 협업능력과 도전정신
- 실제 코딩 실력
- 사실상 전공/비전공 가리지 않음.
- 전공생과 동일.
- 실제 코딩 실력 – 전공이건 아니건 동일
- 융합 등, 트렌드 따라가지 말고 실력쌓기에 몰입하자.
- 전공생 채용과 동일
- 기본적인 자질 성실 끈기 인내
- 중급이상의 코딩 실력 / 새로운 것 받아들이는 능력 / 성실함
- 실제 문제 해결 능력
- 프로젝트형 경험 이력을 많이 참고함
- 개발 역량
- 태도. 프로그래밍에 대한 기본적 자세. 실제 코딩 실력.
- 실제 코딩 실력 / 컴퓨터 공학에 대한 이해도
- 전공자 채용과 동일함. 본 전공의 능력이 도움이 되는 경우가 많지 않음.
- 개발 실력
- 코딩 경험 / 개념에 대한 이해
- 비전공자 채용과 동일
- 본 전공과 소프트웨어 분야에 대한 융합적인 역량
- 실제 코딩 실력과 인성, 책임감
- 코딩 능력이 다소 떨어져도 프로그래밍 능력이 있다면, 전문 업체와 함께 일할 수 있으므로,
- 소비자가 무엇을 원하는지, 소프트웨어로 어떻게 해결하는 게 좋은지 이해할 수 있고
- 협력(토론)이 가능한지 여부가 제일 중요하다고 판단됨
- 전공과 SW분야에 대한 융합적인 역량 및 각 전공별 이해도
- 현재 전공자, 경력직 위주의 채용만 진행 중입니다. 신입사원 채용 안합니다.
(2) 융합인력 채용시 아쉬운 점
- 컴공 지식이 단편적임
- 컴공에 비해 컴퓨터에 대한 이해도가 부족한 건 사실,
- 그 외에는 프로젝트 경험치에 비례해서 크게 다르지 않았음.
- 프로그래밍과 컴퓨터 과학에 대한 이해도가 낮음.
- 사고방식이 문과스러움.
- 컴퓨터구조, 운영체제 등 컴퓨터공학에 대한 지식이 부족
- 기본기 부족
- 자질 부족, 인성 부족, 실력 부족
- 코딩실력부족 / 주위 SW 생태계 경험, 네트워크 부족으로 인한 고립 (물어보고, 도움 받을 곳 부재)
- 언어 자체의 숙련도가 낮음, 코드 퀄리티에 대한 인식 부족
- 개발 언어 보다는 실제 개발에서 사용하는 프레임워크, 라이브러리 등 환경과 전반적인 프로젝트 프로세스의 이해도가 많이 떨어짐
- 컴퓨터 구조, 운영체제 등 컴퓨터 공학에 대한 지식이 부족
- 실제 개발에 사용하는 프레임워크나 라이브러리 등 실무 경험이 부족
- 컴퓨터 구조, 운영체제 등 컴퓨터 공학에 대한 지식이 부족/프로그래밍 언어 자체에 숙련도가 낮음
- 컴퓨터 구조, 운영체제, 알고리즘 이런 기본이 되는 과목을 이수한 경우가 매우 적고 이수했어도 제대로 이해하고 있지 못했음. 실습 등을 통해 쌓인 개발 경험도 매우 적고 제한적이었음.
- 평균적으로 전공자보다는 개발역량이 부족
- 개념 이해도와 경험
- 별도로 융합 인력임을 고려해 채용하지 않음
- 전공자 대비 컴퓨터 공학의 지식과 언어 숙련도가 낮습니다,
- 하지만 커뮤니케이션 능력이 뛰어나 경험이 쌓이면서 잘 하는 분들이 많습니다.
- 프로그래밍 숙련도가 낮고, (기한이 주어진) 프로젝트 경험이 별로 없습니다.
- 개인 능력은 전공 보다 (1) 지적 수준, (2) 경험 기간에 더 밀접하다고 생각하는데,
- 소프트웨어 융합인력은 알고리즘, 자료구조, 컴퓨터 구조, 운영체제 등 배경 지식에 약함.
- 우리 회사의 경우 배경 지식 부족이 업무 수행에 큰 영향을 주지 않음.
- 우리 회사의 경우 가독성(readability)이 높은 코드를 우선시함.
- 본인이 아니면 고칠 수 없게 만든 경우를 제일 최악으로 판단함.
- 전공자 채용과 동일
- 컴퓨터 구조, 운영체제 등 컴퓨터 공학에 대한 지식이 부족
- 실제 개발에 사용하는 프레임워크나 라이브러리 등 실무 경험이 부족
(3) 융합인력 양성시 보완해야 할 점
- 필수과목은 응용 능력까지 기를 수 있도록 커리큘럼을 보완하면 좋겠음
- 필수 분야 : (자료구조, 운영체제, 프로그래밍언어, 객체지향/함수형 사고, 데이터베이스
- 실무 중심의 프로젝트 경험은 비슷함.
- 하지만, 컴퓨터 공학 부분은 학점 비중을 높여야 함.
- 자신은 찐 개발자가 아니라는 마인드도 있음.
- 개발자로 취업시킬거라면, “소프트웨어 융합학과”가 왜 필요한지 의문입니다.
- 실제 코딩 실력, 실제 프로젝트 진행 경험
- 부전공으로는 금지시켜야함
- 부전공 학생의 경우 컴퓨터 공학 과목을 더 많이 배우도록 이수학점을 높여야 함.
- 부전공학생도 산학 프로젝트를 참여하도록 해야 함.
- 필수 이수 과목 확대 및 비중 강화
- 본인의 부족함을 스스로 채울 수 있는 학습 코스 추가
- 코딩실력 높이기
- 프로젝트, 과목, 경험 보다 코딩 실력 자체를 먼저 높이는 게 필요
- 정규 교과 이외에 부트캠프 등 실무 중심으로 교육을 추가해야 함 등
- 정규과목 외 프로젝트형 과제에 참여하여 팀워크의 필요성과 실무에서 발생 할 수 있는 어려움을 경험하고 극복할 수 있게 하는 것이 필요함
- 오픈소스 교육
- 기본기 : 코딩을 하기 전에 알아야 할 소프트웨어, 하드웨어, 네트워크에 관한 기본 지식.
- 협업하는 방법. 실제 코딩 경험.
- 전공 학생의 이수학점을 높여서 컴퓨터 공학 과목을 더 많이 배우도록 해야 함
- 단순히 전공 이수 시간을 둘로 나누는 수준으로 진행되면 본전공 부전공 모두 부족해짐.
- 전공에 필수적인 요소를 반드시 이수하도록 하고, 이해도도 확실히 점검해야함.
- 또, 개발 과제를 충분히 경험하도록 해서 실제 프로그램 개발의 경험이 제시 될 수 있어야 함.
- 실제 프로젝트 투입
- 컴퓨터의 기본 개념을 이해할 수 있도록 해야 함
- 하나의 언어로 혼자 토이 프로젝트를 완성할 수 있는 프로젝트 경험을 쌓도록 해야 함
- 부전공 학생의 이수학점을 높여서 컴퓨터 공학 과목을 더 많이 배우도록 해야 합니다.
- 외부 교육, 외부 동아리 등, 여러 학습 프로그램 이수
- 디자인 씽킹(design thinking) 교육을 반드시 해야 한다고 생각함.
- 어차피 개발 능력은 수년에 걸쳐 획득하게 되는 것임.
- 그 과정에서 소비자가 원하는 것을 만드는 사람은 성공하는 것
- 자기자신이 원하는 걸 만드는 사람은 실패함.
- 컴퓨터 공학과 실무 중심 교육 사이의 격차가 너무 큼.
- Architecture, OOP 등 소프트웨어 개발에 대한 교육이나 실습이 너무 부족함.
- 생산되는 코드의 퀄리티도 낮아 좋은 코드에 대한 교육도 필요함.
- 실무 개발이 프레임워크 등의 스킬 만 지칭하는 건 아님.
- 이 사항은 전공자에게도 동일함
- 정규 교과 이외 부트 캠프 등 실무 중심의 교육과정을 추가해야 함
2.5. 비정규 교육과정 수료생 채용시
혁신성장청년인재양성사업, 국비 직업훈련 등,
또는 민간 소프트웨어 교육과정을 수료한 학생들을 말합니다.
“42 Seoul” 도 이 과정에 속하게 됩니다.
아직은 정식 수료생(2년 과정)은 없으니 …
(1) 채용시 느끼는 단점
- 수학적사고 및 논리적 사고가 안됨 (전반적인 문제임)
- 기초가 많이 부족하고 배워야 할 컴퓨터 지식이 너무 많은데 시간이 부족함
- 프로그래밍은 외워서 풀기가 아니다.
- 컴퓨터 공학 관련 기본 지식 부족
- 수준이 천차만별. 껍데기만 배운 경우가 많음.
- 주도적이 아니라 수동적 !!!!
- 코딩실력 부족
- 수준이 너무 천차만별 : 아르바이트 수준으로 일에 임하는 사람부터, 열정을 다하는 사람까지 섞여 있음
- 기본이 없이 코딩만 배워서 오는 경우가 대부분
- 공학적 기초역량 부족
- 아주 기본 내용 만을 단기간에 배우는 과정인데, 그것도 채 소화하지 못하는 경우가 많음.
- 실제 개발 경험은 팀 프로젝트 하나, 두 개 정도가 고작인데.
- 상세하게 물어보면 “Free Rider” 수준인 학생이 많음
- 적극 참여한 학생도 오픈소스를 베끼고, 간단한 부분만 고친 경우가 대부분.
- 기초 역량 부족
- IT, 프로그래밍 용어에 대한 지식 부족 / 코딩 경험 부족 / 스스로 포기
- 직업 훈련의 경우, 학원 과제를 포트폴리오로 전환, 개인의 역량으로 속여 취업 시도를 함.
- 학원 내용이 취업에만 맞춰져 있어, 업무에 들어가면 일을 시키지 못함.
- 포트폴리오도 SI에 맞추어져 있어, 비슷한 주제가 반복됨.
- 더구나 고급 수준의 포트폴리오라 신뢰성이 팍 떨어짐.
- 학생간 수준이 천차만별입니다.
- 기초 역량 부족
- 죄송한 답변이오나 채용 의사가 전혀 없음. (채용에 반복된 시행 착오를 많이 겪음. 비용 손실 발생)
- 기술 사용에 대한 이해는 높으나, 기술에 대한 이해는 낮음.
- 정규 교육 과정 학생에 비해서 전공에 대한 이해도가 낮으며, 수학 기초 역량의 부족이 있다고 생각됩니다.
(2) 비정규 교육과정에 보완해야 할 점
- 프로그래밍을 재미있어 할 수 있고, 구체적인 결과가 나올 수 있어야 함.
- 프로젝트 중심의 포트폴리오 만들기 과정으로 치우친 경향이 있는데,
- 전공 내용을 추가해서 단기가 아니라 1년 이상의 중장기 교육이 필요하다고 생각함.
- 타겟형 스킬도 좋지만, 근본적인 문제 해결 방법을 스스로 찾아서 해결할 수 있는 능력을 키워주세요.
- 비정규 교육과정은 없앴으면 좋겠음
- 교육 기간 확대 필요(6개월 → 10개월 이상)
- 숫자 늘리기 위한 교육 말고, 제대로 된 교육을 …
- 주도적이 될 수 있는 문제 해결 능력 향상
- 코딩 실력 높이는데 집중하는 프로그램이 중요함.
- 기본 실력을 높이는 데 시간을 더 많이 할애하게 만들고, 그런 교육을 더 많이 해야 함
- 기본 코딩 실력이 안되면 프로젝트 경험을 쌓고 나온다고 해도 결국 적응에 실패함.
- 같은 기간이라도 밀도 있는 교육을 하고 그 내용을 소화할 수 있는 사람이라면 괜찮습니다.
- 프로젝트 중심의 실무 경험이 필요함 (단순 코딩 문제 풀이가 아닌 A~Z까지의 경험),
- 분야별 자신만의 특기가 필요함,
- AI분야에서 본다면 시장의 다양한 플랫폼 경험,
- 컨테이너 등 특정분야에 강점을 가질 수 있도록 하게 해야 함
- 문제해결 교육
- 소프트웨어, 하드웨어의 최소한의 기본은 가르친 다음에 코딩을 가르쳐야 한다.
- 테스트 코드 작성, 코드리뷰 등 처음부터 잘 익혀야 할 코딩 습관을 몸에 배게 해주면 좋겠다.
- 데이터 구조, 프로그램의 동작 원리, 네트워크, 컴퓨터 구조 등에 대한 교육 추가 요망
- 6개월, 그 이하의 교육과정이라면, 선수 과목이 한 사람들만 받아 특정 분야의 실제 프로젝트를 해보게 하면 좋겠음.
- 실습 단계에서 경험 있는 멘토가 세부적으로 같이 토론, 진행하게 해서 경험의 깊이를 확보해야 함.
- 완전한 비전공자를 대상으로 한다면, 최소 1년, 단기 과정 2-3개를 연속으로 이수하게 해야 함.
- 실제로 시장에서는 많은 구직자들 (전공학과 졸업생 포함)이 여러 개의 민간, 공공기관의 단기 과정을 떠도는 경우가 많이 존재함.
- 응용 지식도 필요하지만, 전산학에 대한 기초 지식의 학습이 필요할 것 같습니다.
- 짧은 시간인데 교육 과정이 너무 광범위해서 수박 겉핥기식
- 하나의 언어를 집중할 필요가 있음
- 자기주도적으로 프로젝트를 개발할 수 있는 실무형 인재 양성
- 학생들이 졸업 후 2~3년 내, 기업 일에 숙련될 수 있도록 해주는 교육이 필요합니다
- 프로젝트 실무 경험 필요, 기본 이론 지식이 상대적으로 부족함.
- 교육과정 제안
- 1) 배경 기초 과정 훈련
- 설령 교육생이 단기 코딩스킬을 원하더라도 네트워크, 컴퓨터 구조, 운영체제 등, 기본 컴공과 지식 습득
- 2) 시장 수요 발굴 필요
- 시장에서 필요한 것 중에 어떤 것을 해소하고 싶은지 찾아내도록
(그 이유가 어떤 것인지도 분명해야 함 e.g. 내가 그 불편을 직접 겪고 있다거나)
- 시장에서 필요한 것 중에 어떤 것을 해소하고 싶은지 찾아내도록
- 3) 어떤 기술을 접목하여 해결할 것인지
- 그래야만 그 기술의 본질에 관심을 갖게 될 수 있음
- 4) 언제까지 어떠한 프로토타입을 만들 것인지
- 이 과정에서 Agile 방법론과 협력 필요성 절감
- 5) 프로젝트 팀간 경쟁 및 포상 필요
- 보상은 항상 제일 중요한 동인
- 1) 배경 기초 과정 훈련
- 스킬 숙련도만 높이는 건 결국 일용직만 늘리는 거다.
- 엔지니어는 기술 자체에 대한 이해와 결과물 퀄리티 자체가 높아야 함.
- 하지만, 단기과정은 결과물을 만드는 표면 스킬만 학습되어 있음.
- 핵심스킬에 대한 이해도를 높일 수 있는 교육 필요
- 교육 기간을 지금보다 확대 필요(6개월 → 12개월 이상)
(설문 끝.)
3. 어떤 개발자가 될 것인가?
취업 자체에 집중한다면, 다른 속성 과정이 낫습니다.
“언어스킬”만으로 뽑는 일자리도 많기 때문입니다.
하지만 개발자가 되고자 한다면 “언어스킬” 만으로는 부족합니다.
기업은 현실 문제를 해결하고 돈을 버는 조직이기 때문입니다.
개발자는 현실 문제를 소프트웨어로 푸는 사람입니다.
즉, 개발능력 = 소프트웨어를 이용한 업무처리능력
= 고객(시장)의 문제를 해결해주는 능력
= 프로그래밍 능력(Hard Skill) + 업무능력(Soft Skill)
(1) 업무능력
“업무능력”은 “일하는 능력” 이라고도 하는데,
요즘 말로는 “Soft Skill” 이라고 합니다.
“협업능력”, “소통스킬”, “통찰력” 등등을 포함하고 있습니다.
산업별로 다르다고 하는데,
정확히는 사업마다 회사마다 다릅니다.
책을 통해 배울 수 없고 그 회사에 가야 배울 수 있습니다.
옛날에는 신입사원 채용시 중요하지 않게 생각했습니다.
어차피 새로 배워야 하니까요.
요즘에는 문제가 크고, 복잡해지고 다양해졌습니다.
성공과 실패가 롤러코스트처럼 반복됩니다.
평생 직장의 시대는 없고, 평생직업의 시대입니다.
개발자들이 고유한 업무방식을 찾기 시작합니다.
그 일 처리 방식이 “개발문화” 입니다.
회사 밖에서도 통용됩니다.
물론 회사 안에선 그 회사의 “개발문화”에 적응해야 합니다.
(2) 기본기
개발자가 된다는 건,
배운 거 말고 다른 일도 하게 된다는 뜻입니다.
프로그래밍 능력이란 다른 일도 하는 능력입니다.
응용을 하려면 기초능력이 있어야 합니다.
그게 “컴퓨터 공학 지식”들입니다.
좋은 개발자란, 프로그래밍 능력(Hard Skill) 과
업무능력(Soft Skill)이 골고루 잘 쌓인 사람입니다.
하지만 모든 걸 다 배우고 취업할 순 없습니다.
그런 사람을 바라지도 않습니다.
다만, 두 가지를 확인합니다.
(1) 적당한 수준의 역량 (Hard Skill, Soft Skill)
(2) 잘 배우는 능력
필요수준은 회사별로, 연차별로 다양합니다.
밖에선 알 수 없으니 요령껏 알아봐야 합니다.
4. 어떻게 시작해야 할까?
42과정은 최고가 아닙니다.
훌륭한 과정은 맞습니다.
단기과정은 아닙니다.
2년짜리 과정입니다.
“코딩스킬”에만 집중해선 안됩니다.
인성을 추구하는 과정을 아니지만,
지식만을 추구하는 과정도 아닙니다.
업무능력까지 연습해야 합니다.
개발자가 되려면 어디서 시작 해야 할지 몰라 막연할 때,
도전해도 좋은 부트캠프 과정입니다.
완성된 인재상은 없습니다.
자기 역량에 맞추어 목표를 세우고,
자기 목표에 맞추어 실력을 기릅니다.
자기 수준에 맞추어 세상에 나갑니다.
개발자 1~2년 하다가 그만 둘 게 아니라면,
기본적인 학습법(동료학습, 소통스킬 등)을 익히고 나갑니다.
변화에 맞춰 성장하는 방법입니다.
하지만, 다양한 벽에 항상 부닥치게 됩니다.
이를 극복하기 위한 공부방법은 다양합니다.
차차 이야기를 풀어 보겠습니다.
※ 계속 잘 모르고 어려워서 헤맨다면, 멘토단의 문을 두드리세요.
끝.
정리해주셔서 고맙습니다.
자료 꾸준히 오려주시고 정보 공유해주셔서 고맙습니다.
감사합니다. 조금이라도 더 많은 분들께 도움이 된다면 좋겠습니다.
학원들의 양산형 교육 방식이 싫어
외로운 독학을 하고있는 비전공 개발자 취업을 희망하는 29 청년입니다.
읽으면서 제가 현재 갖고있는 개발자로의 취업에 대한 마음가짐과 공부 방법론적인 부분에 대하여 반성도 하게되고 그렇다면 어떻게 공부를 해나가야 할지에 대하여 좀더 생각해보게된 감사하고 귀한 글이었습니다.
열심히 써주신 글인만큼 자주 보러오겠습니다. 🙂
감사합니다.
감사합니다. 혹시 도움이 필요하면 한 번 들러주세요. 🙂
좋은 글 감사합니다 제가 나중에도 계속 읽으면서 고쳐나가고 싶은점이 있어서 그런데 제 개인 블로그에 글 중간부분을 퍼가도 될까요? 단순 제 일기장 같은 블로그이며 영리활동은 없는 개인 블로그입니다.
넵. 출처만 어디엔가 명기해주시면 감사하겠습니다.
예전에 코딩을 중독처럼 하다가 현재는 학업에 열중해서 공부하고 있습니다. 어떻게 자기 역량을 채울까 생각하다가 좋은 글 보고 갑니다
도움이 되었다면 다행입니다. 행복한 일주일 되세요~
항상 좋은 글 감사드립니다. 30명이나 되는 중급 이상의 개발자 분들을 모아서 설문조사를 진행하는 일이 쉽지는 않았을텐데, 학생들에게 많은 도움이 될 것 같습니다.
도움이 된다니 기쁘네요. 화이팅입니다. 🙂