Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
개발자 커리어 : 두려움이 이끄는 대로
Search
AhnSeongHyun
February 13, 2022
Technology
0
1.5k
개발자 커리어 : 두려움이 이끄는 대로
AhnSeongHyun
February 13, 2022
Tweet
Share
More Decks by AhnSeongHyun
See All by AhnSeongHyun
Django ORM에서는 어떻게 SQL Where절 조건 순서를 고정할 수 있을까?
ahnseonghyun
0
200
개발자는 어떤 일을 하는 걸까?
ahnseonghyun
0
430
SQLAlchemy CustomTypes
ahnseonghyun
0
900
5번째 회사 그리고 레이니스트
ahnseonghyun
0
210
리부트 : 경력자에게도 수습이 필요한 순간
ahnseonghyun
0
2.3k
MQTT 를 이용한 주문 시스템 개선
ahnseonghyun
0
1.1k
CNN MNIST Tutorial
ahnseonghyun
0
75
github:유용한 기능들
ahnseonghyun
0
1.7k
카피캣으로 시작하는 오픈소스
ahnseonghyun
0
1.4k
Other Decks in Technology
See All in Technology
【Startup CTO of the Year 2024 / Audience Award】アセンド取締役CTO 丹羽健
niwatakeru
0
930
SREによる隣接領域への越境とその先の信頼性
shonansurvivors
2
510
[FOSS4G 2019 Niigata] AIによる効率的危険斜面抽出システムの開発について
nssv
0
310
Security-JAWS【第35回】勉強会クラウドにおけるマルウェアやコンテンツ改ざんへの対策
4su_para
0
170
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
28
12k
B2B SaaS × AI機能開発 〜テナント分離のパターン解説〜 / B2B SaaS x AI function development - Explanation of tenant separation pattern
oztick139
2
220
Terraform CI/CD パイプラインにおける AWS CodeCommit の代替手段
hiyanger
1
240
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
470
マルチモーダル / AI Agent / LLMOps 3つの技術トレンドで理解するLLMの今後の展望
hirosatogamo
37
12k
透過型SMTPプロキシによる送信メールの可観測性向上: Update Edition / Improved observability of outgoing emails with transparent smtp proxy: Update edition
linyows
2
210
CysharpのOSS群から見るModern C#の現在地
neuecc
1
3.1k
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
65
11k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Producing Creativity
orderedlist
PRO
341
39k
It's Worth the Effort
3n
183
27k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
KATA
mclloyd
29
14k
Code Review Best Practice
trishagee
64
17k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
860
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
47
2.1k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.3k
Transcript
안성현 개발자 커리어 두려움이 이끄는 대로
안성현 Payhere CTO Backend Developer ash84.io sh84ahn
ழܻয ߸ച ઙ ജ ೡ ߸ച пࢿҗ ҅थ
ழܻয ߸ച🧑🎨🧑💻👨🏭👷 ઙ ജ
반전공자로 시작 학교 • 의공학/의료정보학 전공 • 윈도우 프로그래밍 C
+ + , MFC 는 전공수업, 그러나 CS지식은 부족 • 알고리즘, 자료구조, 데이터베이스는 CS 전공수업을 수강
윈도우 클라이언트 개발자 신입 - 2년차 개발자 • 벤처기업 병특으로
커리어 시작 🪖 • MFC, C#으로 전자칠판 하드웨어와 연동되는 PC 프로그램 개발 • 3개월 만에 거의 모든 직원 30명 이상 퇴사 👋 • CTO - CEO - 🙋 남은 상황 😇
윈도우 클라이언트 개발자 신입 - 2년차 개발자 • 개발자가 없는
상황에서 임베디드 소프트웨어 유지보수 • 신입 몇 분을 더 채용, 용역 개발을 진행 • 돈을 버는데 부모님께 용돈을 받았던 상황 • 현실적인 월급과 개발자 이전에 직장인에 대해서 생각이 많았던 시기 • 첫 출발은 쉽지 않았다. 🙍
검색엔진 컴포넌트 개발자 2년 ~ 4년차 • 검색엔진 솔루션 패키지
회사 • 병특 이직 🪖
검색엔진 컴포넌트 개발자 2년 ~ 4년차 • 기술 스택의 급격한
변경 😇 • 윈도우 기반에서 리눅스 기반으로 변경 • MFC, .NET, C# => ANSI C/C + + • 클라이언트 => 서버 개발자 전환 • 다시 처음부터 시작하는 느낌
검색엔진 컴포넌트 개발자 2년 ~ 4년차 • 검색엔진 도메인, 알고리즘,
자료구조, 대용량 데이터 처리 • 회귀테스트 - QA - 패키징 프로세스 • JIRA를 통한 외부 업무지원/의사소통
검색엔진 컴포넌트 개발자 2년 ~ 4년차 • 개인적으로 성장의 폭이
가장 넓었던 시기. • 일에 대해서 닥치는 대로 한다고 생각 • 모르는 것을 모두 흡수 한다. 어깨너머로 훔치기 🥷 • 명령어, 단축키, 설정 등등
2년 ~ 4년차 • 나만의 개발관련 공부/학습 정립 ݈झఠ٣ -
଼, ۿ ࢎ٘ ۽ં - Fun, नӝࣿ ࠶۽Ӧ - ഥࢎ সޖ 검색엔진 컴포넌트 개발자
검색엔진 컴포넌트 개발자 2년 ~ 4년차 • 서브 언어에 대한
고민 • Python vs. Java • 친구는 Java/Spring 추천 • 개인적으로 좀 더 마음이 들었던 Python 선택 • 파이썬 세미나/밋업 참여, 파이콘 주기적 참여, 오픈소스 생태계 관심
검색엔진 컴포넌트 개발자 2년 ~ 4년차 • 서버를 하다보니 앱을
만들고 싶다는 생각 • 맥미니 덜컥 구입후 Objective C 공부 • 사이드 프로젝트로 앱 출시 • 앱과 서버를 같이 해볼 수 있었던 시기
iOS 개발자 4 - 5년차 • 스타트업 초기 멤버, 블루투스
태그 IoT 기기 관련 • 풀스택 개발자 • 서버와 iOS 앱 개발 진행, 대시보드, 백오피스 구현 • 블루투스 연동 관련 경험 • iOS생태계의 경험, Objective C => Swift 😱
iOS 개발자 4 - 5년차 • 자금 문제로 1년만에 끝
• 창업시 주의할 점들 간접 경험 : • 사람, 아이템, 자금 여력, 시장상황
PG사 서버 개발자 5 - 9년차 • 파이썬 서버 개발자
🐍 • 각종 결제창 서버를 Flask 로 개발/운영 • 처음으로 내가 좋아하는 Python으로 밥벌이가 가능해진 시기
PG사 서버 개발자 5 - 9년차 • 회사가 어떻게 돈을
버는지를 알게 된 시기 • 서비스가 잘된다. => 돈을 번다는 구조 ❌ • 내가 만든 소프트웨어가 어떻게 돈이 얼마나 버는지 보였던 • 반대로 장애가 났을때, 얼만큼의 돈이 날아갔는지 알 수 있었던 🤑
PG사 서버 개발자 5 - 9년차 • 안정감 있는 회사,
프로세스가 갖춰진 완성형 회사 • 반대로 최신기술이나 컨퍼런스/세미나의 기술 적용의 어려움
PG사 서버 개발자 5 - 9년차 • Best Practice 를
이겨야 하는 어려움 IDC 사내 프레임워크 SVN 클라우드 오픈소스 git docker 🆚
PG사 서버 개발자 5 - 9년차 • 커피/로봇커피 프로젝트 진행
☕ • 결제 외 상품/주문/쿠폰/이벤트 등 이커머스 도메인 경험 • 개발만으로 서비스가 운영되지 않는다. • 백오피스, 오프라인 운영자분들, 교육을 위한 자료 • 서비스 운영을 위한 많은 업무/노력/관계를 경험 • 돈을 제대로 받기 위한 정산/대사, 각종 정책과 컨플라이언스 중요성
PG사 서버 개발자 5 - 9년차 • 성장 • 로그의
중요성, 동료와 협업/매너, 타 회사와의 협업 • 서비스 회사에서의 경험, 어떻게 배포를 할 것인가? • 어떻게 장애대응을 할건가? 장애시 보고 등 다양한 프로세스 경험
PG사 서버 개발자 5 - 9년차 • 심신이 안정되었던 시기
🤗 • 회사와 집 15분 • 제일 오래 다녔던 회사 4년
PG사 서버 개발자 5 - 9년차 • 이대로 괜찮나? 직장인
개발자로 좋은데 🤔 • 내가 원하는 것을 하고 있나? 후회하지 않을까? • 이직결심 💼
PG사 서버 개발자 5 - 9년차 • 대기업 - 스타트업
많은 회사에 지원 • 결국 마지막에 대기업과 스타트업 사이의 고민
PG사 서버 개발자 5 - 9년차 • 대기업 - 스타트업
많은 회사에 지원 • 결국 마지막에 대기업과 스타트업 사이의 고민 이직 결정표
PG사 서버 개발자 5 - 9년차
스타트업 서버 개발자 9 - 11년차 • 이전과 완전 다른
환경 • 연령대 : 30/40 => 20/30 • 사내 메신저, svn => slack, git/github • IDC => 클라우드 k8s • 분당 => 여의도
스타트업 서버 개발자 9 - 11년차 • 일을 할당 받던
방식 => 일을 찾고 기여를 해야하는 문화 • 마인드의 변화 : 같이 만들어 간다. • 3개월 수습기간, 다시 태어난 느낌
스타트업 서버 개발자 9 - 11년차
스타트업 서버 개발자 9 - 11년차 • 개인적으로 너무 좋았던
시기 😊 • 시리즈 B - 시리즈 D • 회사의 급속한 성장, 사람과 조직/문화가 어떻게 바뀌어 가는지 경험 • 보이지 않는 문화의 중요성 • 동료가 복지다.
스타트업 서버 개발자 9 - 11년차 • 성장 • 송금
파트 2년 담당 • 송금과 전자금융업 도메인 이해 • 결제 도메인의 확장 • 카드, 상품권 💳 => 뱅킹 🏦
스타트업 서버 개발자 9 - 11년차 • 성장 • 인프라,
플랫폼 영역까지 넓게 일을 해볼 수 있었던 시기 🔥 • MSA 에 대한 간접 경험 • Kotlin/Spring 등 다양한 언어 사용
스타트업 서버 개발자 9 - 11년차 • 테크리드 경험 👨🏭
• 1인 개발자 역할에서 더 큰 일을 할 수 있는 팀을 구성 • 그 안에서의 용기를 주는 역할 👏 • 역경을 팀원들과 함께 이겨냈을 때, 성취가 너무 좋았음. • 매니저가 되어가는 것에 대한 불안함? 매니저에 대한 인식의 변화
스타트업 서버 개발자 9 - 11년차 • 퇴사 결심 •
팀보다 더 큰 조직에서 기여할 수 역할 필요 • 다양한 회사에서의 조직/개발문화의 아쉬움🙍 • 완벽한 조직은 없지만, 타 회사/실리콘밸리를 언제까지 동경? • 이미 만들어진 회사보다는 만들어야하는 회사가 적합하다고 생각
ೡ ߸ച🧑💻👨🏭 пࢿҗ ҅थ
클라이언트 개발자 => 백엔드 개발자 시야의 확장 • 경험의 확장
=> 시야의 확장 • API Design, 시스템구성 등등 • 나무보다는 숲을 보기 시작
클라이언트 개발자 => 백엔드 개발자 걱정과 불안 • 걱정과 불안
• 서버가 죽으면 어떻게 하지? • 사용자가 몰리면 어떻게 하지? • 하루도 편할 날이 없었다. 😂
클라이언트 개발자 => 백엔드 개발자 걱정과 불안 • 걱정과 불안
• 서버가 죽으면 어떻게 하지? • 사용자가 몰리면 어떻게 하지? • 하루도 편할 날이 없었다. 😂 🔥🧑💻🔥 • Log, Monitoring • DB • Observability • Test • Performance
백엔드 개발자 => 테크리드 역할의 확장 • 기술적 의사결정 +
매니저의 역할 • 기능 개발 => 일이 되게 하는 역할
백엔드 개발자 => 테크리드 다양한 고민 • 어떻게 우리가 일정내
일을 되게 할 수 있을까? ⏱ • 그러면서, 어떻게 의사소통 비용을 어떻게 줄일수 있을까? • 동시에 함께 성장할 수 있을까? 🤼
백엔드 개발자 => 테크리드 일이 되게 하는 역할 • 상상하기
전략 🧐 • 어떤 프로젝트를 완성하기 위한 과정 전체를 초반에 상상 • 테크스펙, 토론, 피드백을 통한 가시성 확보 • 그러나 회색 영역이 존재
백엔드 개발자 => 테크리드 일이 되게 하는 역할 • 회색
영역 😶🌫 • 기술 : 빠르게 프로토타이핑 검증 => 일정 수립 • ex 비동기 처리 어떻게 하지? 🧐 • 다양한 비동기 처리 기술 리스트업 • 간단히 구현, 테스트 진행
백엔드 개발자 => 테크리드 일이 되게 하는 역할 • 회색
영역 😶🌫 • 일정 : 꺼내먹기 • 빠르게 동료에게 공유 • 불편하더라도 반드시 공개적인 자리에서 애기하기. • 좋은게 좋은식 ❌ • 나중에 일정이 더 필요하다는 게 더 불편. 😔
백엔드 개발자 => 테크리드 일이 되게 하는 역할 • 다른일에
관심두기 전략 😎 • PO, 디자이너, 개발자들과 소통 • 성공적인 프로젝트가 되기 위해 계속 제안 • 서로가 챙겨야 하는 것을 챙겨준다.
백엔드 개발자 => 테크리드 일이 되게 하는 역할 • 다른일에
관심두기 전략 😎 • 내 것만 다했을 때 성공하기란, 쉽지 않다. • 나는 백엔드니까 API 만들었으니 끝! 은 아니다. • 오픈하지 못하는 프로젝트가 많다. • 오픈하지 못하면 연습일 뿐. • 운영경험/성장을 놓치게 됨.
백엔드 개발자 => 테크리드 의사소통 비용 줄이기 • 일이 되게
한다. => 일정과 연관 • 일정을 잡아 먹는 것들 = = 시간 비용
백엔드 개발자 => 테크리드 의사소통 비용 줄이기 • 시간 비용
• 보이는 시간 : 기획, 개발, 디자인 등 마일스톤에서 보이는 시간 • 보이지 않는 시간 : 소통, 피드백, 토론, 코드리뷰, 회의 😱
백엔드 개발자 => 테크리드 의사소통 비용 줄이기 • 보이지 않는
시간 줄이기 • 회의 시간 단축, 회의 문서 미리 준비 • 코드 리뷰 정책 정하기 • 코드내 그라운드 룰 • 소통을 위한 용어 사전 정의
백엔드 개발자 => 테크리드 함께 성장하기 • 성장하고 있다. •
어떻게 이걸 개개인 느낄 수 있게 할까?
백엔드 개발자 => 테크리드 함께 성장하기 • 각자 하고 싶은게
다르다. 🧑💻 API를 잘 만들고 싶다. 👨💻 성능개선!! 👩💻 모니터링, Observability에 관심이 많은데..
백엔드 개발자 => 테크리드 함께 성장하기 • 하고싶은걸 하게. •
그리고 나는 서포트의 역할 • 기술적 의사결정을 도와주는 역할 • 틀린 의사결정을 내릴 수 있다. • 함께 한다는 것. 더 나은것을 채택할 수 있는 환경 조성
테크리드 => CTO 첫번째 했던 일 • 우리가 왜 개발자로
일을 해야하는지? • 그것이 어떤 가치가 있는지? • 회사의 서비스/ 제품을 만드는 역할, 핵심이자 중추적인 역할 • 우리가 어떻게 일을 해야하는지 • 그래서 개발자인 여러분 중요 • CTO는 개발자를 위해 존재하는 사람
테크리드 => CTO 첫번째 했던 일
테크리드 => CTO 제일 비싼것은 시간 • 시간은 절대 돌아오지
않는다. • 제일 비싼것을 절약하자!
테크리드 => CTO 제일 비싼것은 시간 • 조직내 커뮤니케이션 방식
정립 • 코드리뷰 : 감정상하지않고, Blocker ❌ • 슬랙 사용방법 : 스레드, 컨텍스트 많이 전달하기 • 이슈 전달 방법 • Jira 사용방법
테크리드 => CTO 제일 비싼것은 시간 • 배포 프로세스 정립
• 회사는 고객에게 가치를 전달, 그리고 대가를 지불받는 것으로 성장 • 배포는 고객에게 가치를 전달하는 중요한 과정 • 그렇기 때문에 배포를 어떻게 언제 할 것인가가 중요
테크리드 => CTO 제일 비싼것은 시간 • 시간적 관점에서의 고민
• 내가 코딩을 하면 빠르다? 시간절약? • 조직/회사의 성장을 위해서 코딩을 하는 것이 맞는가? 🤯 • 시간 사용의 ROI 끊임없는 고민
테크리드 => CTO 사람 • 사람이 만사 • 한 사람,
한 사람이 절실, 특히 스타트업 • 시니어, 주니어 이런 기준보다 함께 성장할 누군가 있다는것 • 회사의 제품은 기술이 아니라 사람이 만든다. • 기술 선택, 사용하는 것도 결국 사람
테크리드 => CTO 지속가능성 • 단순히 일이 되게 하는것을 넘어서
• 어떻게 비지니스적인 가치를 창출 할 수 있을까? • 그런 조직이 어떻게 지속가능하게 할 수 있을까? 🤨
테크리드 => CTO 지속가능성 • 지속가능한 코딩 • 지속가능한 서비스
• 지속가능한 조직
테크리드 => CTO 지속가능성 • 지속가능한 코딩 • 포맷팅, 린트,
테스트코드, 그라운드 룰 • 지속가능한 서비스 • 지속가능한 조직
테크리드 => CTO 지속가능성 • 지속가능한 코딩 ✅ • 지속가능한
서비스 • 피처가 아닌 것들 챙기기, 관리포인트 줄이기, 자동화 • 지속가능한 조직
테크리드 => CTO 지속가능성 • 지속가능한 코딩 ✅ • 지속가능한
서비스 ✅ • 지속가능한 조직 • 사람, 개발 문화 🤼
테크리드 => CTO 함께 성장 • 내려놓기 • 하고싶은것 하게
테크리드 => CTO 함께 성장 • 내려놓기 • 모든것을 알
수는 없다. • 모르는것, 미숙한 것 직접 공개적인 자리에서 애기 • 도움을 청하자 🙏 • 프론트엔드도 잘 모르고, 데브옵스 경험도 없고, k8s는 겉핣기 • Golang 스타일 가이드 같이 만들어봐요! 🤝
테크리드 => CTO 함께 성장 • 하고 싶은것을 하게 •
회사는 모두를 만족 시킬 수는 없다. • 들어주기 그리고 지원해주기 • 굳이 그렇게 까지 해야해? 이건 일이잖아? • 사람에게 얼마나 진심인가?
테크리드 => CTO 함께 성장 • 하고 싶은것을 하게 •
희망고문은 사양 ✋ • 회사의 방향, 조직에서 할 수 없는것은 없다고 거절 • Rust를 백엔드에서 사용하고 싶다!!! • 현재 사용할 수 없는 이유 설명 • 납득이 안되더라도 설명하기
Ѿۿ ف۰ Սח ۽
결론 커리어 패스 • 특별한 커리어 패스는 없었다. • 처음부터
CTO가 되겠다는 생각은 없었다. • 해보고 싶은 것을 찾아서 최대한 했던 커리어패스
결론 성장 • 자리/상황이 성장을 만든다. • 이건 역량의 문제가
아닌 취향의 문제 • 조금 더 무리해서 원하는 방향으로 스스로를 내몰자
결론 성장 • 하기 싫은것과 두려운 것을 구분하기 • 불편하긴
마찬가지 • 회피, 일을 시작하기가 싫음. • 내 상태를 들여다보기 🕵
결론 성장 • 하기 싫은 일 😖 • 마치 설거지와
비슷 • 빨리하고 치우자는 느낌으로 진행, 설거지하고 넷플렉스 보자는 느낌 • 스스로에게 보상을 걸고 진행 🎁 • 언제까지 이것을 하면 스스로에게 뭔가 주기
결론 성장 • 두려운 일 😱 • 대체적으로 안해보거나 어려운
일 • 가야하는 방향, 필연적으로 성장 할 수 밖에 없는 영역 • 두려움 감정을 배제하면 성장이 보인다. 🤩
결론 사람과 매니징 • 개발자 커리어 끝? 새로운 시작! •
매니징 직군 세분화 😎 • 실장, 팀장 -> CTO, VP of Eng., EM, TechLead, TPM 등 • 공통된 핵심 역할 : • 각 영역에서 어떻게 일이 되게 할 것인가? • Blocker 제거의 역할 🚧
결론 사람과 매니징 • 사람들은 모두 하고 싶은게 있음 •
절대 간과해서는 안되는 것 • 백엔드 => API만들고 싶다. • 프론트엔드 => 화면을 이쁘게 만들고 싶다. • 1on1 통해서 파악 • 원하는 것은 계속 변한다. 1ରਗ
결론 기타 • No Sliver Bullet, 로드맵은 로드맵일뿐, 각자의 길은
다르다. • 기술은 단기투자가 아닌 장기 투자, 투자적 관점으로 접근 • 모든것은 트레이드 오프, 만약 Java/Spring을 선택했다면? • 공부는 계속 💆 • 동료/복지/좋은 문화는 공기와 같은 것 • 맞는 사람과 함께 하기에도 부족한 시간
감사합니다 🙇