취준생을 도와주는 4가지 로드맵

취준생을 도와주는 4가지 로드맵

취준생을 도와주는 4가지 로드맵
୧(-᷅‎ہ-᷄)୨ 
୧(-᷅‎ہ-᷄)୨ 

초딩도 배운다는 코딩, 이젠 문과계열에서도 물어보는 코딩(파이썬). 이제 곧 취업을 앞둔 취준생에게 필요한, 꼭 알아두면 좋을 지식들! 인프런에서 현직에 있는 실무자들이 나눠주는 노하우로 꿀팁 얻어가세요 🙂

1. 신입을 위한 시니어 개발 로드맵


개발 공부를 했는데, 현직자를 위한 심화 공부를 어디서 해야하는 지 막막하다면, 여기서 바로 노하우를 얻어가세요.

예제로 배우는 스프링 입문 (무료강좌)
https://www.inflearn.com/course/spring_revised_edition

스프링부트 개념과 활용 (by 미국 Microsoft 개발자님)
https://www.inflearn.com/course/스프링부트

스프링 프레임워크 핵심 코어 (N모사 개발자들도 듣는 강좌)
https://www.inflearn.com/course/spring-framework_core

견고한 JS 소프트웨어 만들기
https://www.inflearn.com/course/tdd-견고한-소프트웨어-만들기

함수형 프로그래밍과 JavaScript ES6+
https://www.inflearn.com/course/functional-es6

2. 비전공자에게 필요한 IT 기술


엑셀, 파이썬, 문과계열도 기본으로 알아하는 IT 상식들을 체크해보세요.

파이썬 입문과 업무자동화
https://www.inflearn.com/course/python-파이썬-자동화

빅데이터의 통찰력을 키워주는 엑셀 Quick Start
https://www.inflearn.com/course/엑셀-강좌

컴퓨터, 웹, 코딩, 프로그래밍의 시작 – Web1
https://www.inflearn.com/course/컴퓨터-웹-코딩-프로그래밍-시작-web-1

3. 아무나 시작할 수 있는 게임 개발

게임개발에 관심이 있다면 아래 강좌로 일단 시작해보세요 🙂 순서는 상관없어요!

유니티 게임 개발 (Unity 2D) – 시작부터 배포까지 (ver.2018)
https://www.inflearn.com/course/유니티-게임-개발-unity

배틀로얄 게임을 만들며 배우는 언리얼 게임 개발
https://www.inflearn.com/course/unreal-언리얼-게임-개발-강좌

4. 스타트업에서 꼭 필요한 그로스해킹!  

스타트업에 관심이 있거나, 핫한 트렌드를 알고 싶다면, 아래 강좌를 한 번 훑어보세요.

페이스북 마케팅의 모든 것
https://www.inflearn.com/course/페이스북/

R을 R려줘 – R 문법 기초 (중급강좌도 있어요)
https://www.inflearn.com/course/r-기초-데이터-분석

 

 

최종면접 통과하고 취뽀하는 강좌들

최종면접 통과하고 취뽀하는 강좌들

 

최종면접 통과하고
취뽀하는 강좌들  ༼ つ ◕_◕ ༽つ


덕분에 기술면접을 잘 
봤다는 수강평들이 올라온 강좌들을 선별했습니다. 관심사에 맞는 강좌를 찾으셔서 꼭 좋은 곳에 취뽀하세요. 그리고 좋은 결과 있다면 인프런에 꼭 알려주세요!

웹 개발  (ง •̀_•́)ง

파이썬 사용자를 위한 웹개발 A to Z
https://www.inflearn.com/course/파이썬

파이썬으로 장고 공략하기: 입문
https://www.inflearn.com/course/django-course

트렐로 개발로 배우는 프론트엔드 실전 기술
https://www.inflearn.com/course/vuejs

Vue.js 완벽 가이드
https://www.inflearn.com/course/vue-js


백엔드 / 서버  (ง •̀_•́)ง

테스트주도개발로 다루는 Node.js API 서버
https://www.inflearn.com/course/테스트주도개발-tdd-nodejs-api

Node.js 교과서 – 기본부터 프로젝트 실습까지
https://www.inflearn.com/course/node-js-교과서


자바 + 스프링을 다룰거라면  (ง •̀_•́)ง

예제로 배우는 스프링 입문 (무료강좌)
https://www.inflearn.com/course/spring_revised_edition

스프링부트 개념과 활용 (by 미국 Microsoft 개발자님)
https://www.inflearn.com/course/스프링부트

스프링 프레임워크 핵심 코어 (N모사 개발자들도 듣는 강좌)
https://www.inflearn.com/course/spring-framework_core

 

교수님도 찾아 듣는 게임강의  (ง •̀_•́)ง

게임 프로그래밍 연습문제 패키지
https://www.inflearn.com/course/c-2

따라하며 배우는 C++ (국내 최고 C++ 띵강 인증)
https://www.inflearn.com/course/following-c-plus/

retr0의 유니티 게임 프로그래밍 에센스 (알 사람은 다 압니다)
https://www.inflearn.com/course/유니티-게임-프로그래밍-에센스

유니티 게임개발 – 시작부터 배포까지 (수강평만 훑어보세요)
https://www.inflearn.com/course/유니티-게임-개발-unity

배틀로얄 게임을 만들며 배우는 언리얼 게임 개발
https://www.inflearn.com/course/unreal-언리얼-게임-개발-강좌

 

모바일 앱 개발로 갈래  (ง •̀_•́)ง

iOS 앱 개발 퍼펙트 가이드
https://www.inflearn.com/course/ios

Flutter 입문 – 안드로이드 iOS 개발을 한번에
https://www.inflearn.com/course/flutter-입문

안드로이드부터 파이어베이스 서버, 훌륭한 챗봇 만들기
https://www.inflearn.com/course/kotlin-android-firebase

 

인생이 바뀐다는 함수형 프로그래밍  (ง •̀_•́)ง

함수형 프로그래밍과 JavaScript ES6+
https://www.inflearn.com/course/functional-es6

swift로 함수형 프로그래밍 시작하기
https://www.inflearn.com/course/swift-fp

 

업무자동화와 마케팅 직군  (ง •̀_•́)ง

파이썬 입문과 업무자동화
https://www.inflearn.com/course/python-파이썬-자동화

페이스북 마케팅의 모든 것
https://www.inflearn.com/course/페이스북/

 

보안과 해킹  (ง •̀_•́)ง

화이트해커가 되기 위한 8가지 웹 해킹 기술
https://www.inflearn.com/course/화이트해커가-되기위한-8가지

취미로 해킹 #01
https://www.inflearn.com/course/linux-3

 

리눅스  (ง •̀_•́)ง

리눅스 시스템 프로그래밍 (15년 경력자의 노하우)
https://www.inflearn.com/course/리눅스-시스템-프로그래밍-이론과-실습/

 

데이터분석이 핫하다지 (ง •̀_•́)ง

데이터과학을 위한 파이썬 입문
https://www.inflearn.com/course/python-파이썬-입문-강좌

R을 R려줘 – R 문법 기초 (중급강좌도 있어요)
https://www.inflearn.com/course/r-기초-데이터-분석

빠르게 배워봤자 빠르게 잊힌다는게 제 지론입니다 – 개발자 김은기 2편

빠르게 배워봤자 빠르게 잊힌다는게 제 지론입니다 – 개발자 김은기 2편

Today We Learned #03
인프런이 만난 사람 – 개발자에게 듣다

빠르게 배워봤자 빠르게 잊힌다는 게 제 지론입니다

– 개발자 좋은사람 김은기 2편

Q. 지식을 공유하게 된 계기가 있나요?

IT 분야에 최적화된 지식공유 사이트는 인프런에서 처음 봤어요. 다른 사람을 가르치고 저도 같이 발전하는 프로세스를 좋아해요. 왜냐하면 남을 가이드하고 제가 가진 지식을 전달하려면 2~3배 준비를 해야 해요. 그런 의미에서 저도 발전이 되고, 웹을 이용해 365일, 24시간 자신이 듣고 싶을 때 IT 관련 지식을 습득할 수 있다는 점도 저의 목적에 부합했어요.

그때 마침 파이썬, 크롤링 프로젝트를 하고 있었는데요. 고거랑 딱 맞물려서 한번 해보자는 마음으로 만들었어요.

Q. 강좌 올리고 난 뒤의 변화라면 어떤게 있을까요?

인프런에 강의를 올리고 나서 외부적으로 저를 필요로 하는 곳에서 적극적인 요청이 왔어요. 좋은 기회도 왔고요. 스타트업이나 이름있는 회사에서도 러브콜이 왔어요. 좀 더 적극적으로 사람들의 아이디어와 ‘이런 크롤링을 만들고 싶어요’같은 문의사항이 많이 왔어요.

답변은 제가 프로젝트가 너무 바쁘지 않은 한 100% 해드리는 편인데요. 이제 막 강의를 듣기 시작한 학생이 ‘이런 패턴으로 만들어보면 어때요?’ ‘이런 사이트는 ‘좋은 사람’님의 강의를 듣고 접근을 해봤어요.’라고 할 때면 정말 많은 생각을 하게 돼요. 서로 교류하면서 제가 디벨로퍼로써 급속도로 발전해나가는 게 가장 큰 변화에요. 이건 경력과는 상관없는 부분인데요. 또 경력이 많다고 훌륭한 developer라고 볼 순 없다고 생각해요.

또, 좀 더 깊게 파고드는 습관이 생겼고요. 블로그에 많이 찾아오셔서 아이디어를 건네고 질문을 함께 해결하는 과정에서 저의 개발 능력이 급속도로 발전한다는 것을 느꼈어요. 강좌를 계기로 다른 회사나 출판사, 기타 세미나, S사 등에서 저를 알게 되어 다양한 요청이 들어왔고, 삼성 SDS 멀티캠퍼스에서 딥러닝 기반 빅데이터 전문가 과정에서 강의를 하는 계기가 되기도 했고요.

Q. 처음 만드신 강의가 파이썬 웹 크롤링 강의에요. 어떻게 만들게 되셨나요?

유튜브 빅데이터 분석을 할 때 다양한 데이터가 필요했어요. 빅데이터 분석에서 어떤 모델을 학습시킬 때 데이터양의 힘이 정말 커요. 데이터의 양이 많아질수록 학습률, 분류, 회귀의 정확도가 높아져요.

유튜브나 인스타그램, 트위터에서 제공하는 API를 활용해서 데이터를 수집하다가 Stack over Flow에서 GUI 기반으로 유튜브 영상을 다운로드하거나, 네이버나 다음 같은 포털 사이트의 특정 기능을 자기 비즈니스에 특화해 개발하고 싶어 하는 글들을 많이 봤어요.

우리나라뿐만 아니라 Stack over Flow, Github에서 이슈, 질문, Q&A를 통해 검색을 해보니 파이썬 웹크롤링이 많이 없더라고요. 파이썬, 예를 들면 PyQT*를 활용하는 강의가 보이지 않았어요.
*파이썬에서 GUI 프로그래밍을 할 때 사용하는 대표적인 패키지

이 주제를 다루는 강의를 만들면 저도 발전할 수 있고, 강의를 듣는 사람들도 자기가 필요한 곳에 파이썬의 라이브러리를 활용해서 업무 자동화와 편의성을 도모할 수 있겠구나,라는 생각에서 강의를 만들었어요.

Q. 그다음엔 Go 강의를 만드셨어요.

딥러닝 기반 프로젝트를 진행할 때, 파이프라인 기반으로 데이터를 전처리 및 모델 학습하는 부분에서 Golang을 이용하면 빠르고 효율적이라는 걸 Github에서 발견했어요.

그래서 이 언어는 뭐지? 하고 관심만 갖고 있었는데요. 본격적으로 Revel*이라는 웹 프레임워크로 간략한 POC, 즉 프로토타입 프로젝트를 만들면서 많은 장점이 있다는 걸 알게 되었어요. 물론 단점도 있지만. Go 언어를 구글에서 만들었고, Google docs, Twitch, Dropbox, 도커, 깃헙 러너 등 전 세계를 이끄는 굵직한 프로젝트들이 Golang으로 되어 있다는 걸 많이 모르시더라고요. 
*Go 기반의 웹 프레임워크

자바나 파이썬도 물론 세계적으로 유명한 언어지만, 전 세계를 이끄는 서비스를 제공하는 업체들의 백엔드, 그리고 비트코인과 암호화폐들도 Go 언어를 기반으로 만들어진 것들이 많아요. 그리고 Golang을 제가 실무에서 파이프라인이나 웹 프레임워크를 사용하고 만족스러운 피드백을 받았기 때문에 자신감을 갖고 Golang 강의를 제작했어요.

Q. 기억에 남는 수강생이 있을까요?

인프런 <파이썬 웹크롤링 수업> 중에 한 학생이 있었어요. 내가 이렇게까지 답변을 해야 하나, 자기가 검색해서 보면 쉽게 찾을 수 있는데, 싶을 정도까지 많은 질문을 했어요.

처음에는 저도 사람인지라 조금 귀찮고 고의적으로 답변을 미루기도 했었는데요. 어느 순간, 그 친구에게 답변을 하면서 저도 몰랐던 부분들을 알게 됐어요. 예를 들어 파이썬에도 디자인 패턴이 있거든요. 패턴과 규약에 관해 질문하는 걸 보면서 이 분은 나중에 정말 파이썬을 잘하게 되겠구나, 자기만의 크롤러를 만들어서 활용할 수 있겠다 생각했죠.

나중엔 점점 질문의 수준이 높아져서 제가 질문을 따라가지 못해 답변하려고 2-3시간 동안 코딩해보고 데이터와 결과물을 보고, 정확한 아웃풋이 나왔는지 확인해서 답변을 줬어요. 그분이 마지막에는 제 블로그까지 찾아와서 감사의 인사를 10줄에 걸쳐서 하더라고요. 그때 제가 처음에 귀찮아하던 부분을 반성을 했고, 이 과정에서 저 역시 성장하는구나 다시금 깨닫는 계기가 되었어요.

Q. 수강생에게 건네는 조언이 있다면? 

어떤 문제를 해결하려면 어느 정도의 시간이 필요합니다. 이건 개발뿐만 아니라 어떠한 공부라도 마찬가지인 것 같아요. 시간과 열정, 또 이해하려는 노력을 투자해야 걸맞는 숙련도가 상승해요. 바로 구글링해서 갖다 붙여놓고 어, 된다 하고 넘어가면, 갖다 쓰는 엔지니어로 갈 수밖에 없을 거 같아요. 물론 안 좋은 뜻은 아닙니다.

하지만 구조적, 성능적으로 문제가 없는 견고한 소프트웨어를 만들기 위해서는 프로젝트 하나를 만드는데 시간이 오래 걸리더라도, 기초부터, 알고리즘이나 자료구조를 기반으로 프로그래밍을 시작을 하셨으면 좋겠어요.

수강생분들은 검색을 깊게 해보고 막연히 예제 파일만 따라 하는 게 아니라, 변형을 해서 A를 만들었다면 A, B로, 또 B, C로, A, B, C로 만들고 응용해보세요. 파이썬을 배웠다면 Java 로도 만들어보는 식으로 활용한다면 정말 비약적인 속도로 실력이 상승한다고 생각해요. 그 부분을 염두에 두시고 공부하시면 좋겠습니다.

Q. 지금 막 프로그래밍을 시작하는 사람에게 효율적인 공부법이 있을까요?

먼저 내가 왜 프로그래밍을 하는지를 생각해야 될 것 같아요. 단순히 먹고살기 위함인지 아니면 빠르게 돈을 벌기 위함인지. 그렇게 (프로그래밍을 시작)하시는 분들은 오래 못 하더라고요. 프로그래밍을 왜 공부하는지, 내가 뭘 하고 싶은지를 정확하게 파악하는 게 중요합니다. 또 자기한테 알맞은 언어를 선택을 해야겠죠. 모든 언어를 잘 할 수는 없기 때문에 현재 트렌드, 그리고 자기와 부합하는 언어가 무엇인지를 선택하세요.

가장 중요한 건 변수 선언부터 차근차근 시작하는 겁니다. 빠르게 배워봤자 빠르게 잊힌다는게 제 지론입니다. 프로젝트를 단계별로 나눠서 차근차근 배우고자 하는 언어의 특성을 캐치해 정확하게 기초부터 배우는 거죠.

저는 어린이 앱을 이용하는 것을 추천해요. 요즘은 초등학생들도 코딩을 배우잖아요. 바로 어려운 책을 보는 것보다 쉬운 교재로 배우는 게 좋아요. 예를 들어 스크래치 같은 프로그램은 단순하기 때문에 남녀노소 누구나 쉽게 접근이 가능하죠. 기초를 떼고 스스로 만족했다면 그때 입문서 이상의 프로그래밍 교재로 직접 코딩해보고 또 새로운 것을 변형해서 만들어보세요.

꼭 필요하다고 생각하는 건 ‘스터디’와 ‘멘토’에요. 사람들 앞에서 발표하거나 공부하는 기간이 정해지면 평소에 생각하지 못한 능력이 나오기 때문에 여태까지 공부해온 것들의 숙련도가 많이 상승되는 계기가 돼요. 멘토를 구해도 좋고요. 네이버 프로그래밍 카페 등에서 만든 스터디로 다른 사람과 교류하면서 가르치고 계획하고 지도 받다 보면 실력이 비약적으로 상승합니다.

마지막으로 다른 사람이 만든 코드를 갖고와 개선해보는 작업도 중요해요. 코드는 실력과 더불어 성격, 그 사람의 캐릭터가 드러나있기도 해요. 요즘은 인터넷에 오픈소스를 공유하기 때문에 다른 사람이 만든 코드를 직접 읽고 바꿔보고 개선해보면 자신의 프로그래밍 능력도 발전합니다. 초심자들은 이런 스텝을 따라 공부하면 좋을 거같아요.

Q. 인프런에서 눈여겨 본 지식 공유자가 있을까요?

작년에 리액트나 Vue. js기반으로 프로젝트를 하면서 강의를 찾아봤는데요. <실습 UI 개발로 배워보는 자바스크립트와 Vue. js 개발>강의를 감동적으로 봤습니다.

웹 기술을 이용한 클라이언트 서버 Application에서 자바스크립트가 이러한 역할까지 할 수 있구나, 제가 생각했던 이상의 또 다른 세계가 있구나를 알게 해줬어요. 책에서 읽어보긴 했지만 순수 자바스크립트를 활용해서 MVC(Model View Controller) 패턴을 강의에서 직접 구현하는 걸 보고 많은 걸 깨달았어요. 김정환 님이 되게 잘하시는 것 같습니다. 또 배워보고 싶고요.

테스트 주도 개발로 만드는 Node, 견고한 JS 소프트웨어 만들기 이런 건 진짜 숙련도가 끝에 있지 않는 한 강의할 수 없는 내용이기 때문에 이러한 내용을 가지고 파트 하나에 전념하고 계신다는 게 정말 부럽고 자극이 됩니다. 그래서 김정환 님의 강의들을 추천드리고 싶어요.

Q. 지식공유할까 말까 망설이는 분들께

저는 이렇게 생각합니다. 무조건 하세요.내가 가진 능력을 공유하기 위해 정리하고 분류하고 새로운 걸 찾아보는 과정에서 본인이 획득하는 경험은 정말 어마어마하다고 생각해요. 수업을 듣는 분도 실력이 향상되고, 또 수강생이 배운 지식을 바탕으로 사회생활을 하며 결과를 만들어내는 네트워크가 지속적으로 퍼져 나갈 때 좋은 개발 문화가 형성돼요.

그래서 ‘이걸 다른 사람들보다 더 잘 안다고 생각해’라는 부분이 있다면 무조건 공유하는 게 좋다고 생각해요. 그 과정에서 얻는 건 물질적인 소득과 비교할 수 없을 정도로 큽니다. 제가 그걸 체감했어요. 망설이지 마시고 무언가 공유할게 있다면 정리, 분류하고 체계화시켜서 다른 분들께 지식을 제공해주세요.

Q. 강의를 잘 만드는 노하우가 있다면 알려주세요.

저는 노하우가 없다고 생각합니다. 그냥 자료를 수집하고 제가 가진 지식을 정리하고 또 최근에 버전업이 되진 않았는지, 어떤 걸 접목시키면 좋을지, 더 효율적으로 제공하는 방법은 무엇일지만 생각합니다. 문서를 만들고 예제 소스 정리하고 또 개선하면서 강의를 만드는데요. 강의를 시작하고 녹화가 끝나면 예상시간보다 훨씬 길어져요. 특별한 노하우는 없습니다.

>> 인터뷰 1편 보기

좋은사람 김은기 님이 정성껏 만들었습니다.

우리는 성장 기회의 평등을 추구합니다.

 

 

 

저는 이 직업이 정말 좋다고 생각해요 – 개발자 김은기 1편

저는 이 직업이 정말 좋다고 생각해요 – 개발자 김은기 1편

Today We Learned #03
인프런이 만난 사람 – 개발자에게 듣다

저는 이 직업이 정말 좋다고 생각해요.

– 개발자 김은기 1편

Q. 먼저 소개 부탁드려요.

저는 항상 열려있는 개발자 ‘좋은사람*’이고요. 평범하게 개발하고 있어요. 아키텍처의 효율적인 개선과 코드 간소화, 최신 기술들을 현행 프로젝트에 적용하기, 그리고 퍼포먼스와 트렌드에 관심이 많은 개발자입니다.
*좋은사람 님 기술 블로그

Q. 과거에 하신 일과 현재의 일이 궁금해요.

과거에 해온 일은 SI라고 하죠. 큰 규모의 시스템을 처음부터 끝까지 개발하는 건데요. 애플리케이션이 어떻게 만들어지는 지를 정신없이 겪으며 지나왔어요.

R&D에서는 파이썬 쪽의 OCR, 머신러닝, 빅데이터처리 기술을 이용해 대용량 데이터 처리를 진행했고요. 현재는 딥러닝을 이용한 자연어 처리를 하고 있습니다. 지금은 딥러닝을 활용해 자연어 처리를 깊게 파고 있어요. 철자 검사, 동의어 찾기 등을 딥러닝을 이용해 해결하는 프로젝트로 의미분석과 시맨틱 애널리시스*(Semantic Analysis) 학습을 시키고 있어요.
*자연어 분석과정, 자연어 이해 기법 중 하나이며 여러 의미 분석 방법과 다양한 유형의 문법을 이용한다.

Q. 어떻게 개발에 입문하셨나요?

컴퓨터공학을 전공했지만 어렸을 때부터 프로그래밍을 좋아하진 않았어요. 하드웨어의 작동원리 또는 커스터마이징이라고 하죠? 기존의 하드웨어를 뜯어 납땜 같을 걸 해서 새로운 기능을 추가하는 것에 관심이 많았어요.
* 커스터마이징: 이용자가 사용방법과 기호에 맞춰 하드웨어나 소프트웨어를 설정하거나 기능을 변경하는 것.

하지만 하드웨어가 소프트웨어의 퀄리티에 좌우되고, 하드웨어 사양이 높아도 SW가 받쳐주지 못하면 좋은 제품이 나오지 못한다는 걸 분명히 깨달았어요. 그래서 약간 늦은 나이에 소프트웨어 방면으로 전향했어요.

서른 살 즈음이었어요. 당시 SI의 기술을 경시하는 분위기 속에서 SI로 개발에 입문했어요. 그때 정말 많이 힘들었죠. 우리나라의 개발 문화를 조금 쇠퇴시키는 게 SI 문화라고 볼 수 있어요. 불필요한 야근, 정해지지 않은 방법론, 제한된 개발자의 역할 같은 것들.

예를 들어 각종 학원에서 몇 개월만 수업을 듣고 바로 SI로 들어와 작업하는데요. 그렇게 만든 품질은 견고하지 못하다는 걸 깨달았어요. 진입장벽이 낮게 만들어진 소프트웨어는 또 두 차례, 세 차례를 개발을 또 하게 돼요.

안 좋은 점만 얘기를 드렸는데요. 요즘에는 SI도 개발 방법론을 숙지하고 실천하는 프로젝트 매니저나 고객사들이 점점 많아지고 있어요. 프로젝트를 처음부터 끝까지 겪어볼 수도 있고요. 새로운 기술을 찾아 바로 적용하고, 어떤 고객사든지 클라이언트가 원하는 제품을 만들고 그에 따른 만족감과 성취감도 크게 느낄 수 있어요. 다양한 도메인을 경험할 수도 있고요. SI로 개발에 입문한 건 저한테는 굉장한 큰 경험이었습니다.

Q. 프로그래머의 좋은 점은 무엇인가요?

저는 프로그래머라는 직업이 정말 좋다고 생각해요. 첫 번째로 우리나라가 IT 기술 인프라로는 강국에 속하기 때문에 IT 기반 비즈니스 모델로 사업할 수 있는 곳이 정말 많습니다. 그만큼 실력이 좋으면 이직을 쉽게 할 수 있고 또 좋은 회사에서 실력에 준하는 연봉을 받을 수 있어요.

두 번째로 정확하게 기획, 설계 분석된 애플리케이션을 만들 수 있고, 제 날짜에 고객의 니즈를 맞춰 비즈니스 모델, 아이디어를 제품화시키는 능력이 있다면, 1인 개발자로서 많은 수익과 명성과 개발자로서의 인지도를 모두 획득할 수 있어요.

세 번째로 프로그래머는 새로운 것을 창조하는 일이고, 기술의 패러다임이 금방금방 바뀌기 때문에 자기 계발의 기회가 정말 많습니다. 식상한 농담이지만, ‘마흔 살이 넘으면 외식업이나 창업을 준비해야 한다.’ 이런 말은 과거의 자기 계발에 뒤떨어지고 트렌드에 뒤떨어지는 일부 사람들이 만들어낸 말이라고 생각해요. 적어도 제 주위에는 그런 사람은 보이지 않습니다.

열정적이고 진취적으로 일하는 개발자라면, 또 최근에 나온 AWS를 잘 활용하면 이직 시장에서 폭넓게 자기 위치를 선점할 수 있어요. IT 회사도 많고 각 회사마다 필요로 하는 인재들이 정말 다양해요.

1인 개발자로서 제품을 만들어 수입을 창출하고 자신의 인지도를 높이면 사회생활을 영위해 나가는 데에는 부족함이 없어요. 저는 이런 점에서 프로그래머라는 직업이 매우 좋다고 생각합니다.

Q. 관심있는 기술분야가 있나요? 덧붙여 그 분야가 중요하다고 생각하는 이유가 궁금합니다. 

데이터의 빠르고 민첩한 처리가 프로젝트의 성패를 좌우하는 시기가 왔어요. 예를 들어 A 진영에서 관련 오픈소스가 나오면, B 진영에서도 나와요. 이를 활용하는 엔지니어들은 정말 바쁠겁니다. 서로마다 장단점이 명확하고 또 자기만의 최적화된 데이터 프로세싱 시스템을 확보하기 위해 이런 기술력을 습득할 수 있는 좋은 시기라고 생각해요.

저는 AWS를 활용해서 실시간 스트리밍 데이터를 수집, 처리, 분석할 수 있는 시스템을 만들고 있어요. 데이터가 왕이기 때문에 이런 통찰력을 확보할 수 있고 효율적으로 비용을 낮출 수 있는 AWS를 활용합니다. 저장된 데이터를 일반 SQL, NOSQL 또는 자바나 파이썬 을 활용해 직접 조회하고 제공하는 데이터 처리 플랫폼에 관심이 있어요.

데이터를 처리, 분석하고 이와 관련된 제품을 만들어 내부적으로 활용하거나 이익 창출에 힘써야 하기 때문에 경쟁에서 우위에 설 수 있는 기반을 확보하는 것이 가장 중요한 영향을 미칠 거예요.

또 블록체인과 지능형 네트워크가 중요한데요. 지금까지는 데이터를 사후 처리했거든요. 이제 실시간 처리를 이용해 신속하게 데이터를 통합하고 스트리밍 데이터 서비스를 제공하는 기술이 방송, 금융 분야에 막대한 영향을 끼칠 거예요.

그런 의미에서 파이썬, Golang, R이 중요하고요. 특히 데이터 분석 처리에 용이한 범용 프레임워크 언어로서 파이썬의 위상은 점점 높아질 거라고 생각해요. 거기에 덧붙이자면 데이터를 처리하고 가공하고 학습하는 데이터 엔지니어의 역할이 점점 위상을 높여갈 겁니다.

Q. 강의는 어떻게 구상하시나요?

자랑은 아니지만 책을 많이 읽습니다. 정말 많이 읽어요. 책을 읽으면서 느낀 건데요. 어려운 책, 쉽게 읽다가 끝나는 책, 남는 게 없는 책이 있어요. 일반적인 바운더리 안에서 쉽게 학습할 수 있는 부분을 넓게 펼쳐 쓴 책들도 많고요.

좋은 강의는 중심을 잡고 있어야 한다고 생각해요. 그래서 기초로 시작하지만 도전할 수 있는 파트, 예제 파일, 또는 어떤 ‘목적’을 꼭 강의에 넣으려고 해요. 그렇게 만들면 강의가 어려워지기도 하는데요. 하지만 저는 강의를 만들 때 너무 쉽게 만들려고 하진 않습니다.

처음엔 기초부터 시작하지만 수강생이 강의를 반복해서 들었을 때 처음에는 해결되지 않은 부분이 나중엔 ‘아, 이런 거였구나’라고 반드시 성취감을 느끼도록 하고 싶어요. 그럴 수 있도록 카테고리와 예제 파일을 구성합니다.

Q. 평소 어떤 툴을 자주 사용하세요?

윈도와 맥을 둘다 사용합니다. 맥은 맥 mini를 주로 사용해요. 들고 다니면서 모니터만 연결하면 매우 쉽게 사용할 수 있기 때문이죠. 노트북은 Window, 데스크탑도 Window를 사용하고요. VS Code, Atom 에디터 그리고 전사적으로 모든 기능을 제공해야 하는 파트에서는 인텔리제이를 많이 씁니다. 프로젝트에 따라서 이클립스를 사용하고요. IntelliJ 기반의 소프트웨어와 파이참, 웹스톰을 즐겨 써요.

Q. 지금 프로그래밍을 시작하는 사람은 어떻게 공부하는 게 좋을까요?

고급, 중급, 초급 이런 개발자들을 우리나라에서 나누는 등급이 있죠. 근데 저는 의미 없다고 생각합니다. 눈으로만 본 게 아니라 직접 키보드로 소리를 내면서 코딩을 한 사람이 잘하거든요.

막연히 Copy & Paste를 하는 것 말고요. 개발자가 갖다 쓸 수 있는 프로그램을 개발하는 개발자, 그리고 그러한 오픈소스를 갖고 와서 개발하는 개발자 두 종류가 있는데요. 둘 다 훌륭하다고 생각해요.

하지만 지금 시작하는 분들은 반드시 요즘 기업에서 채용시스템에 반드시 들어가는 알고리즘을 공부해야 합니다. 무턱대고 시작한 개발자보다 나중에 숙련도가 쌓였을 때 압도적으로 실력 차이가 나는 것을 저는 눈으로 확인하고 체감하고 있기 때문인데요.

각 언어를 배우기 전에 C언어를 활용한 알고리즘 코딩을 먼저 공부하고 자료 구조라든지 알고리즘 문제를 많이 풀어서 기본을 1년 정도 익히고 개발 엔지니어로서의 실무 필드로 나오셔도 충분히 훌륭한 프로그래머가 될 수 있을 거라고 생각해요. 나중에 다시 하려면 쉽지 않아요. 가장 중요한 건 알고리즘에 관한 기초학습이라고 말씀 드리고 싶어요.

Q. 최근에 읽은 책 중, 추천할 책이 있나요?

현재 제 관심사는 대용량 데이터의 실시간 전처리에 있어요. 내가 만들고 싶은 걸 AWS를 활용해 만들어보는 게 가장 핵심입니다. 요즘 90% 이상이 AWS 활용 가능자를 인재로 영입하려 하는데요. AWS를 공부해보시길 추천드립니다.

<실전 AWS Workbook>이란 책이 있어요. 검색하면 1위로 나오는 책인데요. 얇고 정말 좋습니다. 전자책으로도 나와있어요. AWS를 활용한 인프라, 데이터 분석, 백업, 모바일 앱 등 실무 필드의 현업들한테 필요한 것들을 잘 요약해서 설명해놨더라고요. 너무 도움을 많이 받은 책이라서 추천하고 싶어요.

Q. 스트레스는 어떻게 푸세요?

음악을 좋아해요. 듣는 것뿐만 아니라 연주하는 걸 좋아합니다. 밴드에서 드럼을 치면서 스트레스를 풀어요. 또 게임기를 직접 사서 조립하고, 라즈베리 파이를 기반으로 레트로 게임기를 기성품을 만들거나, 직접 파츠를 사서 만들기도 해요. 그렇게 스트레스를 풀어요.

>>인터뷰 2편 보러가기

좋은사람 김은기 님이 정성껏 만들었습니다.

우리는 성장 기회의 평등을 추구합니다.

 

 

 

 
 
정보보안 – 악성코드 분석 전문가 되기

정보보안 – 악성코드 분석 전문가 되기

악성코드 분석 전문가 학습 로드맵

정보 보안에 대한 이슈는 나날이 중요해지고 있죠. 그만큼 정보 보안을 다루는 전문가의 수요는 꾸준히 높아지고 있습니다.
그럼 악성코드나 바이러스를 수시로 모니터링하고 분석하여 대응하는 악성코드 분석 전문가가 되려면, 어떤 지식들을 알고 있어야 할까요?

악성코드 분석에서는 정적분석, 동적분석, 자동화분석 과정을 진행하여 종합적으로 판단해야 합니다. 또한, 각 분석 단계별로 입문부터 심화 과정까지 다루기 위해서는 악성코드 배포부터 바이너리 분석까지 이해도 필요합니다.
악성코드가 배포되는 시점에서는 제일 어려운것은 스크립트 난독화입니다. 난독화 기법에 대해 이해를 하고, 이를 복호화 한 후에 배포되는 악성코드 실행파일을 분석하는 과정을 다룰 수 있어야 합니다.

본 학습 로드맵을 충실히 학습하면 악성코드 바이너리 분석에서는 윈도우 애플리케이션 리버싱 기초부터 활용까지, 대표적으로 활용되는 OllyDBG, IDA Pro 분석 도구의 이해를 할 수 있게 됩니다.

기초부터 활용까지 차근차근 학습해 자신만의 악성코드 분석 환경 및 방법론을 만들어 보세요.

 

도움이 되는 분들

정보 보안 전문가가 되고 싶은 학생

정보 보안 전문가가 되고 싶다 막연하게 생각했는데 무엇부터 시작해야할지 고민이었다면, 여기 이 로드맵만 따라오면 되요!

악성코드에 대응하고 싶은 기업

다양안 랜섬웨어, 악성코드들에 내 사이트를 지키고 싶다면 더욱 좋은 보안 인력이 필요하죠. 팀원들의 실력향상을 위해서 자기개발을 지원해주세요.

보안관련 지식을 쌓고 싶은 개발자

웹 사이트, 앱을 만들었는데 쌓이는 데이터들이 훼손되지 않게 잘 보존하기 위해서는 어느 정도 보안에 대해서 알아야하죠. 위험한 악성코드를 읽을 수 있는 지식을 쌓아보세요.

 

해내면 얻게 되는 것들

로드맵

C 프로그래밍 – 입문부터 게임 개발까지

본 강의는 게임을 직접 만들며 배우는, 초보자를 위한 C 프로그래밍 입니다. C 는 조금 어렵지만, 아주 기본이 되는 언어입니다. C 를 마스터 하고 나면, 다른 언어는 굉장히 쉽게 배울 수 있습니다.

악성코드분석 입문과정

악성코드분석 입문과정은 보안프로젝트에서 오랫동안 해왔던 “악성코드 분석 과정”을 입문자에 맞게 단기 온라인 과정으로 진행합니다. 악성코드 분석과 침해대응으로 진로를 선택한 분들께 입문부터 샘플 분석 사례까지 배울 수 있습니다.

파이썬 오픈소스도구를 활용한 악성코드 분석

파이썬 프로그래밍으로 악성코드 분석을 이해하고, IT 분야의 보편적인 기본지식들로 시작해서 마지막엔 직접 백신프로그램 을 만들어 보는 단계적 강좌입니다.

네트워크 패킷 분석 입문 및 악성코드 샘플 분석

침해사고대응분석 및 악성코드 분석가에 진로를 선택한 분은 꼭 필수적으로 들어야 할 강의

메모리 포렌식 (memory forensic)

메모리 포렌식 을 학습하여 윈도우 운영체제 구조, 메모리 구조를 이해할 수 있으며, 메모리에 저장된 정보를 이용하여 어떻게 악성코드를 분석할 수 있는지 상세하게 다루는 강좌 입니다.

리눅스 악성코드 완벽 실습 과정

리눅스에서 실행되는 파일 구조가 어떻게 구성되어 있는지, 샘플 분석을 직접 실습하며 이해해보세요.