5월 우아한테크 세미나 - 성장하는 노하우

박재영·2022년 6월 2일
0
post-thumbnail

성장하는 기술 조직을 위한 사내 문화

우아한형제들(배달의민족) 에서 제공하는 기술 조직에서는 어떻게 일하고 어떻게 성장할까. 부장님으로부터 추천을 받은 세미나를 보며, 사내에도 함께 공유하고 문화적으로 만들어가면 좋을 것 같아 정리하게 되었다.

스터디

같은 목표로 함께 하는 스터디

  • 인사이트 /동기부여를 통한 성장하기 위함
  • TIL (Today i learn)
    • TIL을 운영: 매일 내가 어떤 것을 하고 어떤 것을 경험했는지 작성하는 채널을 운영

예시: TIL Today I learned(출처:adore_voy)
예시: 나는 오늘 무엇을 배웠나?(출처:달랩)

스터디 주제 선정

  • 프로그래밍 서적을 1권 완독 독파를 하며 실습과 토론을 하며 운영

우아한테크 세미나 프로그램 기획하게 된 것은

  • 실제로 많은 개발자분들이 스터디를 하고 싶어 한다. 원하는 주제의 부재 / 팀에서 같이 하지 못해서 하지 못하는 경우가 많다. 이런 원하는 스터디를 찾는 것, 나를 스터디 할 사람을 구하는 연결고리의 역할을 하기 위해서 시작
  • 자연스럽게 성장할 수 있는 스터디, 인원들의 교류의 장을 만들기 위함


웹 프론트엔드 글쓰기 운영

  • 자유로운 주제 / 기술 블로그 포스팅을 목표로 2편의 글을 쓰는 것
  • 작은 글쓰기 워크샵
  • 서로의 글을 피드백하는 그룹 토의 진행
  • 전사 개발자를 위한 글쓰기 교육 진행

테크레인져스 운영

  • 기술 조직의 발전을 위해 고민하여 4가지 테마를 가지고 활동을 하는 개발자 그룹
    • 외부 발표
    • 블로그 글쓰기
    • 사내 커뮤니케이션
    • 멘토링 & 개발교육



개발자가 공부하고 성장하는 노하우

개발 방법론과 타 직군에 대한 이해 높이기

Q1. 나 혼자 성장하는 것과 같이 성장하는 것 중에 어떤 것이 본인이 성장하는 것에 더 도움이 될까?

  • 함께 성장하는 것이 좋다. 성장은 업적이 아니다. 지식의 공유로 인한, 공유함으로 인한 내 안의 단단함을 가져가는 것.
  • 서로 간의 스터디, 코드 리뷰에서 나누려고 하는 순간에 얻어 가는 것이 많다.

Q2. 내가 계속 성장하고 공부해야 하는 이유

  • 남들이 내게 바라지 않는 것을 알아가는 것
  • 계속해서 나의 커리어를 발전시키고 도태되지 않기 위하여
    • 3년 주기로 이직을 하며 나의 상승을 일으켜야 한다. 잡은 물고기에는 밥을 주지 않기 때문.
      • 이는, 기술이 굉장히 빠르게 변하고 있기 때문에, 시장에서 '나를 찾는가?'를 알아야 한다. 시장의 흐름에 따라서 나의 가치를 증명과 챌린지 하여야 한다는 것이며, 시장에서 수요/ 요구를 가지는 스택을 내가 가지고 있는가에 대해서 판단하고 성장할 수 있어야 하기 때문이다.

Session

  • Rust 언어에 대한 학습과 프로젝트 진행
  • 개발자의 글쓰기에 관하여
  • 공부하고 성장하는 노하우
  • 매력적인 개발자가 되는 것은 어떤 것일까?
  • 질의응답
    • 나쁜 개발자에 대하여
    • 블로그 외의 공부 방법
    • 성장하는 조직의 좋은 팀장이란?
    • 개발 공부를 할 시 재미를 느끼며 공부하는 것
    • 배민 개발자에게 기획자란?

Rust 언어에 대한 학습과 프로젝트 진행

  • 다양한 언어 사용에서도 이해하려는 노력
  • 이해도의 다양성으로 인원 배분
    • 한 언어에 대한 경험만 있는 사람
    • 여러 프로그래밍 언어에 대해 능통한 사람
      • 시간 투자를 하고 공부 후에 토론을 진행
        --> 이해도가 있는 사람이 이끌어가는 방향
        --> 궁금증이 있는 초보자가 질문을 여러 방향으로 진행

개발자의 글쓰기에 관하여

  • 글쓰기
    • 한 달 반을 주기로 글을 쓰는 모임을 진행
    • 일주일(7일) 단위로 글을 써오고 일주일 안에 글을 작성하지 않으면, 내부의 리뷰를 받지 않도록 함
    • 데드라인을 목표로 글을 써야지, 집중이 된다.
    • 개발자에게 중요해진 글쓰기 역량, 어떻게 다지게 되고 좋나?
      - 내 생각을 정리할 수 있는 시간을 가질 수 있다. 논리적으로 남을 이해시킬 수 있는 글을 가지게 된다.
      - 비 개발자가 보았을 시, 이해가 되고 재밌게 볼 수 있는지가 중요하다. 아무것도 모르는 사람이 하나라도 이해하는 부분이 있어야지 나랑 같이 일하는 사람도 이해시킬 수가 있다.
      - 글을 시작할 시, 장황하고 길게 쓰지 않고, 나의 문체로 한 장 두 장으로 짧게 정리할 수 있어야 한다.

      제텔 카스텐

      1. 매일 매일 메모를 모아서 1000개를 모으면, 많은 글쓰기가 가능하다.
      2. 나의 말로 정리하는 것. 글을 잘 쓰게 되면 히스토리 관리에도 도움이 된다. 미래의 내가 이해할 수 있도록 글을 쓰자.

      참조: 글쓰기를 위한'두번째 뇌 만들기' (feat. 제텔카스텐)
      참조: 제텔카스텐이란?



개발자에게 글쓰기란 무엇인가?

  • 호구지책
    • 나의 성장을 위해서, 나의 발전을 위해서 나를 편하게 만들어주는 도구
    • 글을 잘 쓸 때와 못 쓸 때의 차이점은 확실하다. 나의 생각을 비대면으로 전달할 수 있다는 것.
    • 아는 상태에서 해결하는 것과 모르는 상태에서 해결하는 것과 동일하게, 글로 정리되지 않는 것은, 내가 아는 것이 아니다.
  • 글쓰기는 생활화되어야 한다.
    • 공부를 했는데, 기억을 하지 못했을 때는 보고 느끼고 끝났기 때문이다. 글쓰기는 나의 기억을 길게 유지할 수 있는 장치이다.
    • 개발뿐만이 아니라, 다른 팀과 커뮤니케이션을 할 수 있도록 비용을 줄일 수 있는 도구라고 생각한다.
    • 오프라인에서 대화로도 모두 해결할 수 있겠지만, 언제나 대화/대면으로 해결할 수 없기에, 나의 생각을 문서화&의견의 결론화를 통해서 내보낼 수 있는 소통의 수단이라고 생각한다.


공부하고 성장하는 노하우

  • 개발하기도 바쁜데 다양한 활동을 펼치는 에너지의 근원은?

    • 미래에 후회를 덜 남기기 위해
    • 피드백을 잘해주는 익명의 개발자들과 함께 다른 정보를 확인하고 이야기하며 나눌 있기에
    • 새롭게 시작하는 사람들에게 기술 블로그의 시작을 추천한다. 열린 공간에서의 글을 나누는 것은 다른 사람들의 의견을 나눌 수 있는 논의의 장을 만들어라.
  • 개념의 이해를 위한 직접적인 접근

    • 프로덕트의 제작자 / 교수님들에게 겁내지 않고 편하게 연락을 할 수 있도록 함.

기타 사항, 매력적인 개발자가 되는 것

  • 근거를 잘 대자
    • 상황에 맞고, 객관적이고 타당한 근거를 잘 대자
  • 정보 전달용 글
    • 객관적인 정보를 담은 정보 전달을 위한 글들은 두괄식으로 글을 쓴다.
  • 개발자라면 가지고 있어야 하는 것
    • 문제를 정의하고 가설을 세우고, 피드백 받는 것을 할 줄 알아야 한다.
      • 피드백을 받고 개선하여 나갈 수 있는 것
    • 하나의 문제를 다양한 관점으로 볼 수 있는 것.
      • 프로그래밍에는 여러 가지의 해결 방법이 있다. 인적~ 툴적~ 기술적~ 다양한 해결 방법이 있으나, 거기서 슬기롭게 어떤 방법을 선택하고 근거를 댈 수 있는 사람. 개발의 스콥에서 확인할 시는 다방면을 생각할 수 있는 것.
    • 문제 해결
      • 문제가 원인이 어떤 것인지, 명확히 아는 것에 집중한다.
    • 상위 직급(팀장)에게 문의할 시 겁을 내지 않는다.
      • 팀장은 나를 잡아먹지 않는다. 문의를 한다고 혼을 내지 않는다.
  • 원활한 소통을 위한 말하기 스킬
    • 내가 말하는 것이 맞는 내용일까? 하는 두려움을 없애기 위해서 '이 사람이 나에게 무엇을 원하고 있는거지?'라며 생각을 하고 고민하였다.
    • 사전에 이야기를 하기 전에 글쓰기로 나의 생각을 정리하고, 직접 입으로 말하며 훈련을 하였다.
    • 지식을 알지 못하는 사람에게 설명을 한다.
      • 내가 직접 설명을 할 수 있는 내용을 정리. 쉽게 설명하려고 노력한다.



질의 응답

나쁜 개발자 & 좋은 개발자

  • 혼자 고민하고, 아무것도 보고하지 않는 개발자
    • 어떤 과제를 수행하였을 시, 어떻게 만들었나 보다 -> 어떻게 수행하고 있다, 나의 가설과 증명은 이것이다라면서 확인할 수 있도록 해주는 것이 좋다.
  • 냉소적인 사람
    • 사람을 무시하고, 냉소적이게 대하는 사람. 사람을 찍어누르는 사람으로 인해서 프로젝트가 망하며, 다른 사람들이 눈치 보게 만든다.
    • 아담 그랜트: 기술적인 것은 학습으로 성장이 가능하나, 그가 가지고 있는 도덕성과 인격은 학습이 되지 않는다.


개발을 하다 보면 물경력이 되고 있지 않나? 하는 고민이 들고 있을 시 블로그 외의 공부를 하고 있는 방법은 어떤 것이 있나?

  • 토이 프로젝트를 진행해 본다.
  • 나의 사외 프로젝트를 구성해 보기도 하고, 인원 부족은 발생하지 않는다. 오픈 카톡~ 인터넷상에는 정말 많은 개발자 등이 있다.
  • 프로젝트 하나의 3~4년의 운영을 진행 시, 다수의 QA를 경험하며 불편함을 지워가야 한다. 지구력을 가지고 기술적인 문제가 생겼을 시를 대비하여 기본기를 많이 준비하여야 한다.



성장하는 조직은 팀장의 비중도 많이 차지한다. 어떤 역할을 잘 지원해 주는 팀장이 좋은 팀장일까?

  • 개발자에게 좋은 리드란, 주니어가 어려운 경험을 해결해 주는 것이 아닌, 그 어려움을 해결하기 위한 학습하기 위한 팀과 문화를 만드는 것.
    • 어떤 사람이 어떤 부분에 취약하다 -> 챌린지를 계속 시키면서 성장시킬 수 있는 리드. -> 성장하지 못하였다고 비난하지 않는 것.
    • 칭찬은 공개적으로 하나, 비판은 개인적으로 할 수 있는 사람.
    • 안정감을 느낄 수 있는 팀 - 새로운 것을 개발하였을 시 지지받을 수 있는 분위기의 조성



개발 공부를 할 시 재미를 느껴 공부를 하는 노하우가 있을까?

  • 필요에 의한 공부보단 하고 싶은 것을 한다.
  • 내가 좋아하는 것(흥미)을 직접 만들어 가는 것.
    • 내가 좋아하는 야구팀/축구팀의 성적을 직접 받아볼 수 있는 자동화 로직의 구축 등



배민 개발자에게 기획자란?

  • 개발에 관여하는 모든 사람이 개발자이다. 나와 함께 Product를 만들어간다. 서로의 빈틈을 메워주며 같이 만들어가는 동료이다.


출처: [토크쇼] 우아한 형제들 개발자가 푸는 공부하고 성장하는 노하우

profile
어쩌다 초보 PM ✨ & 다시 서비스 기획 📑

0개의 댓글