ݺߣ

ݺߣShare a Scribd company logo
나의 8년
(2012~2019)
박윤곤
이번 시간에 이야기 할 것들
• 자기소개
• 개발자를 목표로 하게 된 계기
• 복수전공 이야기
• 취업 준비 과정
• 이직 과정
• Python 이야기
• 일하다 보니 필요한 것들
• 결론
자기소개
• 아이스크림에듀 (2018.01~)
• 이전 직장들
• 한국교육학술정보원
• 유비쿼스
지금 하는 일
지금 하는 일 (ѫ)
지금 하는 일 (ѫ)
• 데이터 엔지니어 (+DevOps)
• 일하고 있는 부서의 특징
• Python > Java
• AWS > On-Premise
개발자로 진로를 바꾼 이유?
원래 생각했던 길은?
일반사회과 임용시험 전국 TO
103
26
36
88
237
0
50
100
150
200
250
2008학년도 2011학년도 2012학년도 2014학년도 2019학년도
휴학 후 해 본 일
• 아르바이트
• 공모전
• C와 C++ 독학
나의 8년 (2012~2019)
어느 과를 복수전공 할까?
• 경영학
• 신문방송
• 컴퓨터공학
2년 간 내가 배운 것들
• 졸업 요건 확인: 35학점 이상 이수
• 복학 전 계절학기: 컴퓨터학개론 수강
3학년 때 수강한 과목
과목명 비고
자료구조 (필수) C 언어 듣기 전에 먼저 들었다가 …
자바프로그래밍
웹프로그래밍
C언어 (필수)
오토마타 및 형식언어 컴파일러와 관련됨
객체지향설계
시스템 프로그래밍 설계 윈도우 시스템 프로그래밍 과목 수강
4학년 때 수강한 과목
과목명 비고
파일처리론 DB와 관련 있음
운영체제 (필수)
알고리즘 (필수)
C++ 프로그래밍
데이터베이스
왜 필수 과목인가?
• 자료구조와 알고리즘
• 어떻게 하면 시스템 자원을 효율적으로 쓸 수 있을까?
• 이런 고민을 해결하는 방법을 정리해 둔 과목
• 지금보다 더 효율적인 방법을 생각하는 습관
왜 필수 과목인가? (ѫ)
• 운영체제
• CPU, 메모리, 디스크, 프로세스를 어떻게 관리하지?
• 리눅스를 써 보시기를 추천 드립니다!
왜 필수 과목인가? (ѫ)
• (수강 못 했지만) 네트워크 관련 과목
• 네트워크가 어떻게 구성되는지?
• 서버와 클라이언트를 어떻게 연결할 수 있는지?
• C, Java 등의 언어
• C: 컴퓨터의 근본적인 부분까지 이해할 수 있다는 점
• Java: 많은 곳에서 사용, 객체지향 언어
재미있었던 것들
• 만들면, 결과가 나온다는 점
• 교사라는 직업 자체가 나와 안 맞다는 점을 깨달음
• 개발을 공부하는 과정은 나와 맞다는 생각을 하게 됨
어려웠던 것들
• 과제는 급하게 해야 하는데, 실력이 그에 미치지 못함
• 수학적인 기초가 부족해서 몇몇 과목에서 고생함
아쉬웠던 점
• 원래 전공 필수 과목과 복수전공 과목이 겹치는 경우
• 개발자로 진로를 결정하는 시점이 늦었음
• 3학년: 진로에 확신이 없었음
• 4학년: 교육실습 + 취업 준비
• 아무 것도 없는 상태에서 취업 준비
취업 준비 과정
처음의 지원 전략과 결과
• 내가 장점으로 내세울 수 있는 것이 무엇인지?
처음의 지원 전략과 결과 (ѫ)
• 복수전공은 했는데, 그래서 뭐?
• 개발에 관심이 많다 ≠ 개발을 잘 한다
• 학점이 안 좋았음
나의 지원 전략
• 대기업 SI 업체나 잘 알려진 업체 위주로 지원
• 인적성 시험을 치는 회사들은 진입 장벽이 낮을까?
(아닙니다)
• 그나마 어학 성적은 좋았음
2013년 하반기의 결과
43(서류 제출)
6
(서류 통과)
1
왜 실패했을까?
• 개발에 관심이 많음 → 코드로 증명해야 함
• 전공자와 내가 다른 점은 무엇일까?
• 그 다른 점이 일할 때 도움이 될까?
• 도움이 되지 않는다면, 개발은 잘 하나?
연말이 다가오면서…
• 서서히 급해지기 시작합니다
• 하지만, 너무 조급해 하지 마세요
• 첫번째 회사에서 하는 일이 다음의 진로에 큰 영향을 줌
• 급하게 생각하지 말고, 꼭 하고 싶은 분야를 찾으세요
마지막 지원
• 네트워크 장비 회사에 지원
• 서류 통과
• 시험: C언어, OS(특히 리눅스), 네트워크
• 면접
• 개발에 관심이 많음을 어필
• 어학 성적이 좋은 편이어서 장점으로 봐 주셨던 것 같음
그래서 첫 회사에 입사
• 했던 일들
• 리눅스 시스템 프로그래밍
• 임베디드 시스템 구성에 필요한 것들
• 드라이버 단계 쪽은 해 볼 기회는 없었음
• 회사의 네트워크 교육이 도움이 되었음
• 이 때 배운 것들이 지금도 큰 영향을 미침
개발 분야를 바꾸기
왜 개발 분야를 바꾸려고 하세요?
• 일반 사용자 대상의 서비스에 관심 있었기 때문
다른 개발자들의 관심 들여다보기
• Google I/O Extended Seoul: 2019년 행사
• PyCon Korea: PyCon 홈페이지
관심사를 좁혀보면…
• 모바일(안드로이드)
• 웹 서비스
개인적으로 준비했던 것들
• MusicManager • MovieScheduler
컨퍼런스 발표
• PyCon APAC2016: MusicManager(라이트닝 토크)
• PyCon Korea 2017: MovieScheduler
알고리즘과 자료구조를 다시 공부
• 책 보고 공부
• 온라인 문제 풀이 사이트를 이용하는 것을 추천
실패의 원인
• 회사가 사용하는 언어/프레임워크에 대한 이해 부족
• DB에 대한 이해 부족
• 네트워크에 대해 바라보는 관점
• 장비: MAC 주소, IP 주소, 라우팅, 모니터링
• 웹 서비스: 대규모 트래픽을 어떻게 다룰까?
실패의 원인 (ѫ)
• 알고리즘과 자료구조를 대충 봤음
• 신입에게 요구되는 능력은 문제를 푸는 과정이라 생각함
• 문제가 조금만 어려워도 아예 못 푸는 경우가 많았음
Python을 주력 언어로
Python을 접하게 된 계기
Python을 어디에 쓸 수 있을까요?
• 웹 개발: Django, Flask
• 데이터 분석: Pandas, NumPy, matplotlib, …
• 머신러닝/딥러닝: Scikit-Learn, Tensorflow,
Keras, PyTorch, …
PyCon
• 파이썬과 관련된 다양한 사례들을 볼 수 있는 기회
• PyCon Korea 2019: 8/15~8/18
• 컨퍼런스
• 스프린트 & 튜토리얼
부서 내에서 Python을 쓰는 사례
• 인프라 관리, 데이터 엔지니어링
• 데이터 분석
• 반복적인 업무: 정규표현식(Regular Expression)
어떤 것을 공부하면 좋을까요?
• 기본적인 것들
• 점프 투 파이썬 (+파이썬 공식 문서)
• Python for Everybody (한국어 버전 있음!)
• 그 다음은?
• 커리어에 따라, 또는 앞으로의 커리어를 고려해서
Python이 커리어에 도움이 될까요?
• 아직까지 Java는 많은 곳에서 사용하고 있습니다
• Python이 필요한 곳이 점점 많아지고 있는 상황
• 데이터 분석
• 머신러닝/딥러닝
• 웹 개발
출처: stackshare.io
일하다 보니 필요한 것들
하던 것만 계속 하면 안 됩니다
• 예전에는 이런 거 몰랐는데…
• 클라우드
• 서버리스
• 인공지능
• 기타 등등…
하던 것만 계속 하면 안 됩니다
• 강의 사이트: Udemy, Udacity, Coursera, 인프런
• 개발 관련 서적
• 개발자 커뮤니티
• OKKY, 페이스북 그룹, 커뮤니티에서 운영하는 Slack 등
다른 사람은 어떻게 일하지?
• 사람을 만나서 이야기 하기
• 컨퍼런스 참여
• 스터디 모임
• 사내 주니어 개발자 모임
다른 사람은 어떻게 일하지?
• 어떤 것들을 사용하는지 알아보기
• 버전 관리 툴 (특히 Git)
• 함께 일하는 방법을 연습(Redmine, Slack, Trello, …)
• 어떻게 일하는 것이 좋을지 항상 고민
• 팀 분위기가 새로운 것에 거부감이 없다면 좋음!
협업의 문제
• 특히 필요했던 것
• 개발자가 아닌 사람에게 내가 하는 일을 잘 설명하기
• 개발자가 아닌 사람에게 내가 원하는 것을 잘 설명하기
• 같은 개발자에게 나의 의도를 잘 설명하기
영어, 진짜 필요합니까?
• 원하는 것을 찾으려면, 한국어로는 부족합니다
• 외국인과 협업하기
결론
개발에 관심 있음을 증명하세요
• 꾸준히 조금씩 만들어 보세요
• 왜 그렇게 만드셨어요?
• 만들어 본 것을 자랑해 봅시다
너무 긴장하거나 실망하지 마세요
• 떨어졌다고 해서 너무 상심하지 마세요
• 부족한 부분을 채우는 계기로 삼으세요
지나간 것은, 지나간 대로
그런 의미가 있죠
-전인권, ‘걱정말아요 그대’ 중에서
정리하는 습관이 필요해요
• 노트 프로그램 이용 (Evernote, OneNote, …)
• 내가 배운 것 정리
• 필요한 문서 스크랩
• 좀 더 이해할 수 있도록 정리하면?
정리하는 습관이 필요해요 (ѫ)
• 이력서 정리
• 원티드, 잡플래닛, 로켓펀치
• LinkedIn 프로필
감사합니다!
rubysoho07
hahafree12@gmail.com

More Related Content

나의 8년 (2012~2019)

  • 2. 이번 시간에 이야기 할 것들 • 자기소개 • 개발자를 목표로 하게 된 계기 • 복수전공 이야기 • 취업 준비 과정 • 이직 과정 • Python 이야기 • 일하다 보니 필요한 것들 • 결론
  • 3. 자기소개 • 아이스크림에듀 (2018.01~) • 이전 직장들 • 한국교육학술정보원 • 유비쿼스
  • 6. 지금 하는 일 (ѫ) • 데이터 엔지니어 (+DevOps) • 일하고 있는 부서의 특징 • Python > Java • AWS > On-Premise
  • 9. 일반사회과 임용시험 전국 TO 103 26 36 88 237 0 50 100 150 200 250 2008학년도 2011학년도 2012학년도 2014학년도 2019학년도
  • 10. 휴학 후 해 본 일 • 아르바이트 • 공모전 • C와 C++ 독학
  • 12. 어느 과를 복수전공 할까? • 경영학 • 신문방송 • 컴퓨터공학
  • 13. 2년 간 내가 배운 것들 • 졸업 요건 확인: 35학점 이상 이수 • 복학 전 계절학기: 컴퓨터학개론 수강
  • 14. 3학년 때 수강한 과목 과목명 비고 자료구조 (필수) C 언어 듣기 전에 먼저 들었다가 … 자바프로그래밍 웹프로그래밍 C언어 (필수) 오토마타 및 형식언어 컴파일러와 관련됨 객체지향설계 시스템 프로그래밍 설계 윈도우 시스템 프로그래밍 과목 수강
  • 15. 4학년 때 수강한 과목 과목명 비고 파일처리론 DB와 관련 있음 운영체제 (필수) 알고리즘 (필수) C++ 프로그래밍 데이터베이스
  • 16. 왜 필수 과목인가? • 자료구조와 알고리즘 • 어떻게 하면 시스템 자원을 효율적으로 쓸 수 있을까? • 이런 고민을 해결하는 방법을 정리해 둔 과목 • 지금보다 더 효율적인 방법을 생각하는 습관
  • 17. 왜 필수 과목인가? (ѫ) • 운영체제 • CPU, 메모리, 디스크, 프로세스를 어떻게 관리하지? • 리눅스를 써 보시기를 추천 드립니다!
  • 18. 왜 필수 과목인가? (ѫ) • (수강 못 했지만) 네트워크 관련 과목 • 네트워크가 어떻게 구성되는지? • 서버와 클라이언트를 어떻게 연결할 수 있는지? • C, Java 등의 언어 • C: 컴퓨터의 근본적인 부분까지 이해할 수 있다는 점 • Java: 많은 곳에서 사용, 객체지향 언어
  • 19. 재미있었던 것들 • 만들면, 결과가 나온다는 점 • 교사라는 직업 자체가 나와 안 맞다는 점을 깨달음 • 개발을 공부하는 과정은 나와 맞다는 생각을 하게 됨
  • 20. 어려웠던 것들 • 과제는 급하게 해야 하는데, 실력이 그에 미치지 못함 • 수학적인 기초가 부족해서 몇몇 과목에서 고생함
  • 21. 아쉬웠던 점 • 원래 전공 필수 과목과 복수전공 과목이 겹치는 경우 • 개발자로 진로를 결정하는 시점이 늦었음 • 3학년: 진로에 확신이 없었음 • 4학년: 교육실습 + 취업 준비 • 아무 것도 없는 상태에서 취업 준비
  • 23. 처음의 지원 전략과 결과 • 내가 장점으로 내세울 수 있는 것이 무엇인지?
  • 24. 처음의 지원 전략과 결과 (ѫ) • 복수전공은 했는데, 그래서 뭐? • 개발에 관심이 많다 ≠ 개발을 잘 한다 • 학점이 안 좋았음
  • 25. 나의 지원 전략 • 대기업 SI 업체나 잘 알려진 업체 위주로 지원 • 인적성 시험을 치는 회사들은 진입 장벽이 낮을까? (아닙니다) • 그나마 어학 성적은 좋았음
  • 26. 2013년 하반기의 결과 43(서류 제출) 6 (서류 통과) 1
  • 27. 왜 실패했을까? • 개발에 관심이 많음 → 코드로 증명해야 함 • 전공자와 내가 다른 점은 무엇일까? • 그 다른 점이 일할 때 도움이 될까? • 도움이 되지 않는다면, 개발은 잘 하나?
  • 28. 연말이 다가오면서… • 서서히 급해지기 시작합니다 • 하지만, 너무 조급해 하지 마세요 • 첫번째 회사에서 하는 일이 다음의 진로에 큰 영향을 줌 • 급하게 생각하지 말고, 꼭 하고 싶은 분야를 찾으세요
  • 29. 마지막 지원 • 네트워크 장비 회사에 지원 • 서류 통과 • 시험: C언어, OS(특히 리눅스), 네트워크 • 면접 • 개발에 관심이 많음을 어필 • 어학 성적이 좋은 편이어서 장점으로 봐 주셨던 것 같음
  • 30. 그래서 첫 회사에 입사 • 했던 일들 • 리눅스 시스템 프로그래밍 • 임베디드 시스템 구성에 필요한 것들 • 드라이버 단계 쪽은 해 볼 기회는 없었음 • 회사의 네트워크 교육이 도움이 되었음 • 이 때 배운 것들이 지금도 큰 영향을 미침
  • 32. 왜 개발 분야를 바꾸려고 하세요? • 일반 사용자 대상의 서비스에 관심 있었기 때문
  • 33. 다른 개발자들의 관심 들여다보기 • Google I/O Extended Seoul: 2019년 행사 • PyCon Korea: PyCon 홈페이지
  • 35. 개인적으로 준비했던 것들 • MusicManager • MovieScheduler
  • 36. 컨퍼런스 발표 • PyCon APAC2016: MusicManager(라이트닝 토크) • PyCon Korea 2017: MovieScheduler
  • 37. 알고리즘과 자료구조를 다시 공부 • 책 보고 공부 • 온라인 문제 풀이 사이트를 이용하는 것을 추천
  • 38. 실패의 원인 • 회사가 사용하는 언어/프레임워크에 대한 이해 부족 • DB에 대한 이해 부족 • 네트워크에 대해 바라보는 관점 • 장비: MAC 주소, IP 주소, 라우팅, 모니터링 • 웹 서비스: 대규모 트래픽을 어떻게 다룰까?
  • 39. 실패의 원인 (ѫ) • 알고리즘과 자료구조를 대충 봤음 • 신입에게 요구되는 능력은 문제를 푸는 과정이라 생각함 • 문제가 조금만 어려워도 아예 못 푸는 경우가 많았음
  • 42. Python을 어디에 쓸 수 있을까요? • 웹 개발: Django, Flask • 데이터 분석: Pandas, NumPy, matplotlib, … • 머신러닝/딥러닝: Scikit-Learn, Tensorflow, Keras, PyTorch, …
  • 43. PyCon • 파이썬과 관련된 다양한 사례들을 볼 수 있는 기회 • PyCon Korea 2019: 8/15~8/18 • 컨퍼런스 • 스프린트 & 튜토리얼
  • 44. 부서 내에서 Python을 쓰는 사례 • 인프라 관리, 데이터 엔지니어링 • 데이터 분석 • 반복적인 업무: 정규표현식(Regular Expression)
  • 45. 어떤 것을 공부하면 좋을까요? • 기본적인 것들 • 점프 투 파이썬 (+파이썬 공식 문서) • Python for Everybody (한국어 버전 있음!) • 그 다음은? • 커리어에 따라, 또는 앞으로의 커리어를 고려해서
  • 46. Python이 커리어에 도움이 될까요? • 아직까지 Java는 많은 곳에서 사용하고 있습니다 • Python이 필요한 곳이 점점 많아지고 있는 상황 • 데이터 분석 • 머신러닝/딥러닝 • 웹 개발
  • 49. 하던 것만 계속 하면 안 됩니다 • 예전에는 이런 거 몰랐는데… • 클라우드 • 서버리스 • 인공지능 • 기타 등등…
  • 50. 하던 것만 계속 하면 안 됩니다 • 강의 사이트: Udemy, Udacity, Coursera, 인프런 • 개발 관련 서적 • 개발자 커뮤니티 • OKKY, 페이스북 그룹, 커뮤니티에서 운영하는 Slack 등
  • 51. 다른 사람은 어떻게 일하지? • 사람을 만나서 이야기 하기 • 컨퍼런스 참여 • 스터디 모임 • 사내 주니어 개발자 모임
  • 52. 다른 사람은 어떻게 일하지? • 어떤 것들을 사용하는지 알아보기 • 버전 관리 툴 (특히 Git) • 함께 일하는 방법을 연습(Redmine, Slack, Trello, …) • 어떻게 일하는 것이 좋을지 항상 고민 • 팀 분위기가 새로운 것에 거부감이 없다면 좋음!
  • 53. 협업의 문제 • 특히 필요했던 것 • 개발자가 아닌 사람에게 내가 하는 일을 잘 설명하기 • 개발자가 아닌 사람에게 내가 원하는 것을 잘 설명하기 • 같은 개발자에게 나의 의도를 잘 설명하기
  • 54. 영어, 진짜 필요합니까? • 원하는 것을 찾으려면, 한국어로는 부족합니다 • 외국인과 협업하기
  • 56. 개발에 관심 있음을 증명하세요 • 꾸준히 조금씩 만들어 보세요 • 왜 그렇게 만드셨어요? • 만들어 본 것을 자랑해 봅시다
  • 57. 너무 긴장하거나 실망하지 마세요 • 떨어졌다고 해서 너무 상심하지 마세요 • 부족한 부분을 채우는 계기로 삼으세요
  • 58. 지나간 것은, 지나간 대로 그런 의미가 있죠 -전인권, ‘걱정말아요 그대’ 중에서
  • 59. 정리하는 습관이 필요해요 • 노트 프로그램 이용 (Evernote, OneNote, …) • 내가 배운 것 정리 • 필요한 문서 스크랩 • 좀 더 이해할 수 있도록 정리하면?
  • 60. 정리하는 습관이 필요해요 (ѫ) • 이력서 정리 • 원티드, 잡플래닛, 로켓펀치 • LinkedIn 프로필