개발자 레이첼에게 무엇이든 물어보세요 E.002
2020년, 페이스북에 글 하나를 올렸습니다.
저는 평소에 개발, 프로덕트, 여성 3가지 키워드로 대화를 자주해요. 대화를 통해서 많은 깨달음도 얻고 지인들의 이야기를 공유하면서 또 깨달음을 얻고 그랬어요. 문득, 누구에게 고민을 털어놓거나 질문해야할지 모르는 사람들도 많지 않을까? 다른 분들에게도 이야기를 들으면 또 몰랐던 깨달음을 얻게 되지 않을까? 라는 생각을 했어요. 화려하고 거창하지는 않지만 어떤 고민이든 어떤 질문이든 편하게 남겨주시면 진지하게 고민하고 좋은 형태로 답을 드릴게요. 제 이야기가 답이 아닐 수 있지만 답을 찾아가는 과정도 의미있을 것 같아요. 공유는 환영입니다!
수많은 고민과 질문이 저에게 도착했습니다. 뉴스레터 형태로 고민에 대한 저의 생각을 공유하고 있고요. 그렇게 공유한 저의 생각을 이곳에도 기록으로 남겨둘까 합니다.
✏️ 오늘의 질문: 개발/공부
공부할 건 많은 것 같은데 막상 무엇을 공부해야 할지 모르겠습니다. 주변 환경에 상관없이 스스로 성장할 수 있는 개발자가 되고 싶습니다. 조언 부탁드려요.
⭐️ 레이첼의 생각
개발자라는 직업을 가진 이상 참 끊임없이 성장하고 학습하길 강요받고 강요하고 살아가고 있죠. 비단 개발자만의 일이겠습니까, 진화하는 동물이라는 존재 모두가 그렇겠죠. 교육과정이라는 틀 안에서의 성장은 그리 버겁지 않았습니다. 무엇을 해야 하는지는 명확했고 혼란했던 것은 그저 나의 의지였으니까요. 학교라는 단체를 벗어나 사회인의 범주에 들어섰을 때 그 혼란의 무게는 결코 가볍지 않아집니다. 갑자기 주어진 선택과 책임의 자유도가 그리 달가운 일은 아니었던 기억이 나네요.
오늘 질문의 핵심을 ‘무엇을 공부해야 할지 모르겠다’로 정의해봅니다. ‘공부할 건 많은 것 같은데’ 라는 말로 미루어보아 이 질문에 두 가지 질문을 다시 던질 수 있을 것 같아요. 목적이 없이 이것저것 공부해야 할 것이 많다고 생각하시나요? 혹은 목적은 있으나 해야만 하는 공부가 많으신가요? 마찬가지로 제 경험을 기반으로 매우 주관적인 해석과 주관적인 생각을 풀어보겠습니다.
목적이 없이 이것저것 공부해야 할 것이 많다고 생각하는가?
세상에는 생각보다 많은 선구자들 행동가들이 존재하나 봅니다. 속도 모르고 쏟아져 나오는 새로운 업데이트, 방법론, 라이브러리 또 그걸 적용한 사례들. 또 어찌나 많은 토론 타래 들이 온라인상에 넘쳐나나요. 내가 갈 길인지 아닌지 확인할 틈도 없이 의식은 이미 그 흐름과 함께 흐르고 있죠. 그 결과는 ‘나중을 위해 저장’ 링크만 넘쳐나는 것일 수 있습니다.
SI 회사에 다니던 시절이었습니다. 공공기관을 고객으로 시스템을 개발하는 프로젝트였고, Java와 전자정부프레임워크를 기반으로 개발했습니다. 그 당시, 맥락 없이 저는 Lisp 이라는 프로그래밍 언어를 공부했어요. 이유는? 그냥 멋있어 보이고 싶었습니다. 남들이 빈번히 사용하지 않는 언어를 공부하고 그 자체로 희소성이 생기길 기대했던 거죠. 멋있어 보이고 싶음이 학습의 목적이 될 수 있으나 필연적이게도 아주 희미한 동기부여를 동반했습니다. 학습의 결과는 실패였죠. 책 한 권을 다 읽는 일 자체가 괴로운 목표였으니까요.
요즘은 분산 시스템 적용 사례를 공부하고 있습니다. 목적은 더 현실적이고 구체적이었어요. 제 열정과 코드를 녹여낸 현재 시스템이 의존성의 한계를 넘어서 신호를 보내기 시작했거든요. 시스템을 분리할 적절한 타이밍이고, 모든 것을 분리할 수 없기에 구체적인 기준과 전략에 대한 영감을 얻기 위해 사례 연구가 필요했습니다. 이미 프로젝트의 시작일은 고정됐고, 전략적 계획을 수립해야만 하는 상황이었죠. 매우 뚜렷한 동기부여였습니다. 학습은 성공해야만 했고 저는 무사히 전략을 수립할 수 있었습니다.
저는 성공적인 학습은 동기부여에서 온다고 믿습니다. 동기부여는 내적으로 발생할 수도, 외적으로 발생할 수도 있어요. SI 시절의 저는 아주 약한 내적 동기부여로 학습을 했을 것이며, 현재의 저는 회사 프로젝트라는 외적 동기부여가 함께했다고 할 수 있겠네요. 또 하나 믿는 것은, 일종의 강제성을 동반한 학습은 성공 확률을 높인다는 것입니다. 회사 프로젝트라는 외적 동기부여의 강제성을 부정할 수 없고, 그것이 저를 성공해야만 하게 만들었다고 생각해요.
공부할 게 넘쳐나는 시대의 개발자로 살고 있습니다. 대다수의 비범하지 않은 우리는 다 할 수도 없습니다. 비범하거나 혹은 흘려보낼 수 있는 시간이 넉넉한 분이 아니라면 해보고 싶은 공부를 버리세요. 그저 지금 필요한 일을 찾으세요. 그것이 어느 정도의 강제성을 동반한 것이라면 더 좋고요. 괜찮을 것 같은 미래보다는 불편한 현재에 집중해서 학습의 주제를 선택한다면 결국 더 나은 가치가 남을 것이라 생각합니다.
목적은 있으나 해야하는 공부가 너무 많은가?
사람들은 필요 이상으로 겸손하기도 하지만 또 가끔은 지나치게 스스로를 과신하기도 하죠. 24시간에 꾸역꾸역 나 자신을 갈아 넣으며 내 한계는 없다고 자위하며 말이죠. 그러다 병이 납니다. 네 또 제 이야기네요. 삶에서 더 중요한 가치를 잃으며 끌어올리는 내 한계는 결코 내 능력이 아니라고 감히 단언하고 싶습니다.
지독히도 많은 일들에 떠밀려 살아가고 있죠. 끊임없이 중요한 일들에 깊은 호흡조차 사치스러운 시간을 견뎌내고 있어요. 그 많은 일들이 정말 빠짐없이 중요했을까요? 혹시, 차가운 판단 대신 자기만족 쾌락의 길을 택한 건 아니었을까요? 쓸모있는 사람이 삶의 방향이라고 믿는 저는, 또 버거운 속도로 변화하는 이 IT 산업에 몸담은 팀장 중 한 명으로서 저는, 우선순위라는 단어에 집착합니다. 일도 공부도 삶도, 이 우선순위를 고민하시라는 뻔하지만 실천하기는 또 그리 쉽지 않은 이야기를 하려고 합니다.
해야 할 혹은 해야 한다고 느끼는 일/공부 목록을 작성해요. 그리고 그 옆에 가시적인 제약사항을 적습니다. 구체적일수록 좋아요.
- 분산 시스템 사례 연구: 프로젝트 시작일 3월 1일
- 알고리즘 공부: 인터뷰 날짜 3월 15일
그리고 기대하는 결과를 다시 적어봅니다.
- 분산 시스템 사례 연구: 프로젝트 시작일 3월 1일: 유사한 문제를 겪고 있는 회사의 해결 전략 최소 1개 도출
- 알고리즘 공부: 인터뷰 날짜 3월 15일: dynamic programming 문제 최소 20개 해결
다음은 내가 할애할 수 있는 시간을 추정해요.
- 분산 시스템 사례 연구: 프로젝트 시작일 3월 1일: 유사한 문제를 겪고 있는 회사의 해결 전략 최소 1개 도출: 하루 1시간 x 20일 = 20시간
- 알고리즘 공부: 인터뷰 날짜 3월 11일: dynamic programming 문제 최소 20개 해결: 하루 1.5시간 x 30일 = 45시간
그리고 내가 아닌 다른 대안이 있는지 생각해요.
- 분산 시스템 사례 연구: 프로젝트 시작일 3월 1일: 유사한 문제를 겪고 있는 회사의 해결 전략 최소 1개 도출: 하루 1시간 x 20일 = 20시간: 프로젝트 멤버 인섭 수행 가능
- 알고리즘 공부: 인터뷰 날짜 3월 11일: dynamic programming 문제 최소 20개 해결: 하루 1.5시간 x 30일 = 45시간: 대안 없음
이렇게 나열하다 보면 내가 가진 제약사항, 제한된 시간, 대안 등을 고려해서 나름의 우선순위를 작성할 수 있을 거에요. 그리고 가장 중요한 것. 내 목록에서 버릴 것을 과감히 선택하는 일입니다. 단, 하루를 48시간처럼 사용할 작정도 함께 버리셔야 합니다. 우리는 무엇이든 담을 수 있을 것 같지만 분명 내가 모르는 무언가를 잃고 살아갑니다. 내 의지로 무언가를 담고 또 무언가는 버리는 것, 그것이 어른이라는 증거 아닐까요. 단순하지만 제가 우선순위를 대하는 작은 방법을 이야기했습니다. 쓰다 보니, 언젠가 기회가 된다면 ‘계획’에 대한 생각을 공유했으면 좋겠네요.
마무리 하며 (´▽`)
2021년 2월 14일에 작성
베트남도 설 연휴 기간입니다. 가족들과는 영상 통화로 새해 인사를 나누는 것으로 아쉬움을 대신하고 베트남의 휴양지인 푸꾸옥이라는 곳에 와있어요. 대학교를 컨셉으로 건물을 디자인한 리조트에서 머물렀어요. 제가 배정받은 건물은 예술관이었습니다. 문득, 어떤 예술가는 살아생전 자신의 작품 단 한 점을 팔고 죽어서야 이름을 알렸고, 또 어떤 예술가는 사는 내내 인정받으며 살았지만 우리가 위인이라 여기는 두 예술가는 모두 삶을 갈아넣었다고 표현해도 과언이 아닐거에요. 아마 스스로를 고통스럽게 하는 어떤 것에 강하게 사로잡혔을 겁니다. 그리고 우리 모두 그런 본능 어느 정도는 지니고 살고있을테고요.
고통스럽지만 쾌락을 주는 무언가에 내 전부를 갈아넣는 것이 또 다른 무언가를 위해 포기하고 선택하는 일 보다 우월하다고 생각하지는 않습니다. 그들과는 다르게 선택하고 포기하는 과정 중에, 버림으로써 얻을 수 있는 것들이 있다고 믿습니다. 한 주도 행복하세요. 저는 남은 연휴를 사랑하는 사람과 따뜻한 시간을 만들기 위해 할 일 목록 중 하나를 또 지우러 가봅니다.