-
어느 날 고민 많은 주니어 개발자가 찾아왔다 2탄 - 김영한세미나, 영상 요약정리 2023. 9. 22. 00:01
2023 인프콘의 김영한 님의 발표를 듣고 요약해보고자 합니다.
김영한 님은 왜? 강의로 전향하게 되었을까?
주니어들이 학습을 하는데 시간이 많이 너무 들었다.
이유는 관련 자료들이 너무 쉽거나, 너무 복잡하거나 둘 중 하나여서 실무에 초점을 맞춘 것을 잘 찾기가 힘들었다.
실무에 초점을 맞추어 같이 일하는 동료가 이정도는 알았으면 좋겠다는 생각으로 강의를 만들게 되었는데, 개발 생태계 전반적인 긍정적인 영향을 끼치는 것이 좋았다. (실무 개발 리더들, 취업 준비생들의 감사의 메시지)
개발도 재미있었고, 강의를 찍어서 개발생태계에 긍정적인 영향을 미치는것도 좋았다.
두 가지를 고민하다가 업계의 성장을 위해 "오랜 기간 고민하고 경험한 수많은 실무 노하우를 누구나 쉽게 학습할 수 있는 강의"를 찍는 것으로 결정했다.
성장 기본기 - 기술과 비즈니스
기술과 비즈니스는 50대 50으로 중요하다.
기술적으로는 3가지 종류의 개발자가 있다.
- 기술 공부를 따로 하지 않고 팀의 동작하는 코드를 기반으로 비슷하게 개발하는 개발자 (이슈가 생기면 해결못할 가능성이 높다)
- 기술 트랜드 찍먹 개발자 (팀에서 사용하는 기술을 제대로 이해하지 못하여 기술의 깊이가 만들어지기 어렵다)
- 팀 기술을 잘 이해하는 개발자 (업무의 속도도 빠르고 이슈도 원인을 찾아 해결하기 때문에 신뢰가 생긴다, 점점 더 중요한 업무를 맡게 된다)
그러면 팀에서 사용하지 않는 WebFlux 등의 기술은 학습하면 안되는걸까?
다음과 같은 순서로 학습하면 좋다
1. 팀의 기술
2. 업계의 메인 기술
3. 주변, 최신 기술
업무에 사용할 줄 안다고 그 기술을 잘 아는 것은 아니다.
기술의 기본 원리를 이해해고 그 기술이 왜 필요한지 이해해야 한다.
개인적으로는 찍먹 개발자가 되지 않기 위해 고민해야겠다고 느꼈습니다.
비즈니스
개발자는 비즈니스를 몰라도 될까?
비즈니스를 이해하는 것은 엄청나게 중요하다, 기술을 익히는 시간만큼 비즈니스를 이해하는 시간도 중요하다.
내 월급은 비즈니스에서 나오고, 비즈니스를 충족하기 위해 우리는 코드를 작성한다.
비즈니스를 안다는 것은?
비즈니스와 개발이 어떻게 연결되어 있는지 이해하는 큰 지도를 그려야 한다.
큰 지도는 어떻게 그릴까?
- 기획자, 팀장들에게 직접 비즈니스에 대해 듣고 이해하거나 문서를 활용한다.
- 어드민의 기능 또는 사용자의 기능을 모두 사용해 본다.
- 데이터베이스의 핵심 테이블, 핵심 필드를 정리한다. (테이블이 엄청 많을 수 있지만 핵심 테이블을 적다)
- 핵심 업무 프로세스를 정리한다.
비즈니스에 대한 이해가 약하면 작업의 영향 범위가 어디까지 사이드이펙트가 발생할지 파악하기가 어렵다.
요구사항을 제대로 처리하지 못할 가능성이 크고, 큰 업무를 맡기기는 어렵다.
반면 잘 이해를 했다면 큰 변경사항이 있어도 영향 범위가 어디까지 미치는지 이해하고 있으며, 아키텍처 변경도 가능합니다.
좋은 시스템을 설계하려면?
비즈니스의 대한 이해가 필수적이다.
소프트웨어는 하드웨어와 다르게 변경이 자유로운데 어떤 것이 변할 수 있고 어떤것이 변하지 않을까?
이것을 선택하기 위해서는 비즈니스를 알아야 한다.
아키텍처 설계는 트레이드오프이다.
변하지도 않는 곳에 과도한 인터페이스를 사용하는 것도 좋지 않다.
성장 - 약간의 용기
도전적인 마음으로 comfort zone에서 벗어나고자 하는 마음이 필요하다.
성장 - WHY
근본적인 이유를 알아야 본질적인 답을 찾을 수 있다.
하지만 커뮤니케이션에서 주의해야 한다.
마법의 키워드 "고민이 있습니다"를 활용하기
고민상담은 보통 내가 존중하는 상대에게 하기 때문이다.
생각과 고민이 너무 많은 개발자
고민하는 것은 좋은데 보통 개발속도가 나오지 않는 것이 문제!
우선 단순하게 만들기 최적화, 아키텍처는 고민하지 말자
Make it run, Make it better, Make it faster
거북이 마음을 가지기
우리가 연봉이 높은 이유는 공부할게 많기 때문이다!
어차피 공부할 건 많다.
급한 마음 비우고 깊이와 원리를 배우고 속도보다는 깊이에 초점을 맞추자.
'세미나, 영상 요약정리' 카테고리의 다른 글
스프링과 함께 더 나은 개발자 되기 - 이일민(토비) (0) 2023.10.18 점진적 추상화 - 이승천 (0) 2023.09.26 토스 - SLASH 22 - 토스뱅크의 완전히 새로운 대출 시스템 (0) 2023.09.15 알림 서비스로 시작하는 서버 개발 (0) 2023.09.10 Spring Camp 2023 - 대규모 엔터프라이즈 시스템 개선 경험기 - 1부 (0) 2023.08.27