Linux Kernel(4.19) Hacks

rousalome.egloos.com

포토로그 Kernel Crash


통계 위젯 (화이트)

83235
1036
103653


[SW] 소프트웨어 개발 능력을 혼자 *아무리 노력해도* 키울 수 없는 현실 임베디드 에세이

이번 시간에는 소프트웨어 개발 능력을 혼자 키울 수 없는 안타까운 한국 현실(소프트웨어 인프라)에 대해 포스팅을 해보겠다.

자기 개발서

요즘 '책을 3000권을 읽었더니', '책을 3000권을 읽었더니'.. 등등 제목의 책을 볼 수 있다.


각자 저자들의 생각을 담은 글은 다르나 대부분 다음과 같은 내용이다.
   
   * 책 3천권을 읽었더니 다른 사람이 되었다. 무궁무진한 아이디어가 샘솟는 것을 느꼈다.
   * 3천 권을 책을 읽었더니 엄청난 아이디어가 떠오르고 지적 능력이 업그레이드됐다.
   * 이 과정으로 여러분도 능력있는 학생 혹은 직장인이 될 수 있다.
   * 책을 많이 읽자. 책은 우리 인생을 바꿔주는 지침이다.

여기서 중요한 문구는;

   * 3천 권을 책을 읽었더니 엄청난 아이디어가 떠오르고 지적 능력이 업그레이드됐다.

란 것이다. 그런데 이런 소리를 하는 분들은 전업 작가들이 대부분이다. 
전업 작가 분들이 알려주는 중요한 교훈을 조금 *비꼬아서* 다음 문장으로 바꾸면 어떨까?

   * 3천 권을 책을 읽었더니 엄청난 아이디어가 떠오르고 지적 능력이 업그레이드됐다.
   * 3천 권을 책을 읽었더니 (전업 작가로써 집필을 할 수 있는) 엄청난 아이디어가 떠오르고 
      (전업 작가로써 글을 잘 생산할 수 있는) 지적 능력(글쓰기 능력)이 업그레이드됐다.

조금 더 쉽게 이해가 가지 않나? 맞다. 

   * 전업 작가로 많은 책을 읽어야 문장을 읽는 능력과 글을 생산해내는 스킬이 증진될 수 있는 것이다.

난 이런 전업 작가들의 의견이 틀리다고 말하는 것은 아니다. 
사실 난 전업 작가를 엄청나게 존경한다. 전업 작가란 직업으로 생계를 유지하는 게 얼마나 힘든 일인가? 
엄청난 노력과 공부 없이 불가능하다고 본다. 

경영이나 마케팅 등등 다른 직무 분야에 일하는 직장인이 관련 책을 3 천권을 읽으면 정말로 엄청난 아이디어가 떠오를 수도 있을까? 

   * 사실 난 모르겠다. 난 소프트웨어 개발자이고 경영이나 마케팅 분야에 몸담고 있지 않기 때문이다.

다른 분야에 대해서 전업 작가들이 하는 소리가 맞을 수도 있을 것 같다. 

SW 분야 책을 3천권 읽으면 실무 능력이 키워질까?

그럼 이번에는 주제를 소프트웨어 분야 도서로 돌려보자.

소프트웨어 관련 도서(딥러닝, ARM 프로세스, 리눅스, C/Java 프로그램, 안드로이드)를 3천권을 읽으면 무궁무진한 아이디어가 샘솓을까? 이것은 가정이다.  이런 책들이 3천권이 있지도 않다.

IT 관련 도서 3천권을 읽은 사람이 현업에서 뛰는 5년차 개발자보다 고수가 될 수 있을까?

전업 작가들은 소프트웨어 관련 도서 3 천권을 읽고 난 고수 소프트웨어 개발자가 됐다란 책을 왜 쓰지 않을까?

   * 그런 책을 쓰면 히트를 칠 텐데 말이다.

내가 몸담고 있는 임베디드 리눅스 개발을 예로 들어 볼까?
이 세상에 "리눅스 커널/디바이스 드라이버/시스템 프로그램" 등등 리눅스 관련 책이 3천권이 있다고 가정하자.
 3천권을 책을 다 읽은 분이 나타났다.  자, 이 분께 코어 덤프 하나 주면서 커널 크래시 문제를 잡아 달라고 하면 이를 해결할 수 있을까?  

이번에는 내 생각을 말하겠다.

   * 다른 분야는 모르겠지만, 소프트웨어 분야 관련 책을 3천 권이 아니라 1만권을 읽어도 2년 동안 현업에서 구른(뛴) 
      개발자를 따라 잡을 수 없다.

그런데 이 사실은 어떻게 보면 정말 안타까운 현실인 것 같다.

책 3 천권을 읽어서 지적 능력이 향상된 분들을 예로 들어 보자.
책 3 천권을 읽어서 지적 능력이 향상됐다고 말하는 분들은 사실 교육(커리큘럼)의 기회를 얻지 못해 혼자서 공부하고 노력했다고 볼 수 있다. 책 3 천권을 읽기 위해서 우리가 말하는 대학교나 대학원에 입학할 필요가 없지 않은가? 도서관에 가서 끈기 있게 혼자!!!! 책을 읽으면 되는 것이다.

'소프트웨어 관련 책을 혼자!!! 아무리 읽어도 개발 능력을 키울 수 없다'는 현실을 달리 말하면 다음과 같다고 말할 수 있다.

   * 혼자서 소프트웨어 개발 능력을 키우기는 불가능하다는 소리다.

혼자 노력해도 안되는 이유

먼저 현업 개발자가 집필한 책이 절대적으로 부족하다. 소프트웨어 서적은 IT 전문 강사나 현업에서 은퇴한 분들이 쓴 책들이 대부분이다.
또한 소프트웨어 서적은 대부분 입문자를 대상으로 출판 기회되기 때문에 소프트웨어 현업에서 적용할 만한 내용이 많지 않다.

(To be continued...)

>
Reviewed-by: Austin Kim <austindh.kim@gmail.com> 
Date: Fri, 27 Sep 2019 08:13:23 +0900
>







덧글

  • 함부르거 2019/01/28 10:55 # 답글

    개발 능력이란 게 이론을 갖추고 실제 개발을 해 봐야 늘죠. 그것도 수준 높은 문제를 해결하는 경험을 축적해야 하구요.

    현업에 있을 때 이론과 개발경험이 둘 다 갖춰진 사람 보기가 매우 힘들었습니다. 개발경험이 많다고 해도 평이한 수준의 일만 많이 해서 어느 정도 이상의 어려운 문제 해결능력은 떨어지는 경우가 많았어요.

    가장 이상적인 건 컴퓨터 사이언스 석사 이상 하고 실제 회사에서 개발 경험을 쌓는 겁니다만 우리 나라에서 그런 인력들에게 적합한 일자리가 많지 않지요... 특히 중소기업 쪽은 더더욱 어렵구요. 우리 나라에서 고수 개발자로 불리는 사람들이 대부분 오픈소스 쪽에서 나온다는 거 보면 한국 기업들의 소프트웨어 개발 수준이 어떤가 말해 주는 거 같습니다.

    책 관련해서 말해보자면 어디 가든 책은 그냥 레퍼런스와 기초이론 정도 밖엔 안되더군요. 외국이라고 책 읽어서 고수 됐다는 사람 하나도 못 봤습니다. 오히려 개발방법론 관련 에세이 종류가 상당히 도움이 됐습니다. '조엘 온 소프트웨어' 같은 책이 대표적이죠.
  • AustinKim 2019/01/28 13:36 #

    저도 책을 보면 다들 "기초이론" 서적 밖에 없는 것 같습니다.
    소프트웨어 개발에 첫 걸음을 딛는 분들이 혼자서 공부 및 실습할 수 있는 소프트웨어 학습 인프라가 없는 현실이 좀 안타까운 것 같습니다.
  • 바람의방랑자 2019/01/31 19:21 # 답글

    동감합니다만 조금 다른 경험입니다.

    어느정도 규모가 있는 회사입니다.
    팀 프로젝트가 정해져서 각 부서별로 한명씩 모였는데, 커널팀에서 나이가 좀 있으신 개발자 한분이
    저희 팀에 배정되어 오셨습니다.
    커널관련 책만 몇권을 저술하신 분이신데, 다만, 박사끝내시고 오시면서 개발 경험은 많지 않으신 분이었습니다.

    문제는 커널 버전이 올라가면서 발열 및 커널 패닉 문제가 발생했는데,
    보드는 기존 보드라, 커널에서 문제를 해결해야 했습니다.
    프로젝트 종료 기한은 다가와서 압력은 들어오는데, 하드웨어 팀이랑 서로 대화하는 법도 모르시고,
    그외 다른 팀원들과 대화없이, 그냥 혼자 다 이슈들을 안고 풀지 않으시더라구요.

    결국 프로젝트 파토나고, 다른 팀원분이 들어와서 다음해 해결되고, 그분은 회사를 그만두시더라구요.
    요즘에 독고다이로 개발하는 프로젝트 아닌 이상,
    능력도 문제지만, 개발기간안에 서로 협력하는 법은
    책으로 절대 배울수 없습니다.
  • AustinKim 2019/02/01 16:12 # 답글

    글을 읽어보니 정말 고생 하신 것 같습니다.

    임베디드 리눅스 드라이버+커널 개발을 하다 보면 다양한 기질의 독고다이 개발자를 만나게 됩니다.
    우선 저부터 독고다이가 되지 않으려고 노력하고 있습니다.

    다른 개발자와 함께 협력해서 일하는 방법은 책을 읽어서 알기는 매우 어려운 건 사실 인 것 같습니다.
    화이팅~ 하십시오.
댓글 입력 영역