좋은 개발자의 공통점
좋은 개발자라고 생각되어 지는 사람들은 어떤 사람들일까요? 제가 개발의 즐거움을 알게된 데에 많은 개발자분들의 영향을 받아왔기 때문에 저도 좋은 개발자가 되기 위해서 고민하곤 합니다.
저 또한 공부가 얕은 개발자 중 한 명이지만, 최근에 참여했던 스터디에서 저보다 늦게 공부를 시작하신 개발자들과 공부하게 되었습니다. 자연스레 그 분들께 질문을 받게 되게 되었는데, 주시는 질문 방법이 좋지 않아 아쉽기도 하고 당황스럽기도 했었습니다. 하지만 제가 조언을 해드리기는 망설여졌었습니다. 막상 아쉬운 질문자와 맞딱 드리게 되니 어떻게 조언을 해드리면 이 분이 제 의도대로 잘 성장하실지 모르겠더군요.
그래서 오늘은 좋은 마인드셋에 대한 고민들로부터 알아보는 “좋은 개발자의 공통점”에 대해 정리하려고 합니다. 이 글을 통해 여러분들께서 후배 개발자분을 만났을 때 좋은 에너지와 방향성을 제시해줄 수 있는 선배 개발자가 되어갈 수 있기를 바래봅니다.
좋은 개발자들의 공통점
✅️ 질문의 타이밍
자신이 모르는 것을 남에게 질문하는 것은 부담스러울 때가 많다. 그래서 혼자 몇일을 끙끙거리다가 힘겹게 질문하거나 선배 개발자가 먼저 말을 걸어서 답을 얻는 경우가 많다.
만약 알고싶던 내용이 선배 개발자가 바로 대답해줄 수 있는 것이었다면 오래 끙끙거린만큼 시간을 허비해버린 것과 같다.
질문을 잘하는 분들의 경우 자신이 풀 수 있는 문제의 수준이 아니라는 것을 알게되면 선배 개발자들에게 바로 질문함으로써 그만큼 시간을 아끼고 다음 스텝으로 나아간다.
✅️ 질문의 깊이
질문할 때 ‘이게 뭐에요?’나 ‘A 부터 Z 까지 알려주세요’ 와 같이 질문하지 않는다.
자신이 충분히 찾아보고 자신의 선에서 최대한 알아본 뒤에 풀리지 않는 부분을 질문한다.
그렇기 때문에 질문의 깊이가 깊다.
이런 질문을 받았을 때 바로 답을 주는 경우도 있지만 대부분 이런 깊이 있는 질문은 정확한 확인을 위해 다시 한번 관련 내용을 찾아보게 만든다.
이로 인해 질문 받은 사람도 알고 있던 내용을 복습하거나 놓쳤던 부분을 학습하게 되고 이를 통해 같이 성장하는 느낌을 받는다. 그래서 나는 이런식으로 질문 하는 분들이 좋고 나도 다른 사람들에게 이렇게 질문을 하기 위해 노력한다.
✅️ 가만히 있지 않는다.
시니어 개발자들이 여유가 없을 정도로 바쁜 상황에선 주니어 개발자들을 신경쓰지 못해 그분들의 업무에 공백이 생길 때가 있다. 업무를 잘하시는 주니어 분들은 이런 공백도 허투루 지나가지 않고 아래와 같은 행동들을 한다.
- 업무 혹은 과제를 달라고 요청한다.
- 팀에서 진행하는 프로젝트에 이슈가 없는지 찾아본다. 혹은 발견된 이슈의 원인을 파악해보려고 한다.
- 팀에서 진행하는 프로젝트 코드를 분석한다.
- 팀에서 사용하는 오픈소스나 프레임워크, 라이브러리 코드를 분석한다.
- 프로젝트의 빌드/배포 단계나 모니터링, 개발 환경에 개선점이 없는지 찾아본다.
위와 같은 시간을 보낸 주니어 분들에게 과제를 주면 이미 어느정도 프로젝트나 사용하고 있는 라이버르러리 혹은 업무 환경에 대한 이해도가 높아 과제 진행 속도나 퀄리티가 상당히 높다. 또한 이슈나 버그가 발생했을 때 이를 파악하고 대응하는 속도도 빨랐다. 이로인해 빠르게 신뢰가 쌓이게 되고 어떤 과제를 줘도 믿을 수 있는 동료가 되게 된다.
✅️ 기록을 잘한다.
자신이 기록하는 내용을 다른 사람들이 볼 수 있을거라 생각하고 남들이 봤을때도 충분히 이해가 가게끔 기록하게 하게 되면 그만큼 이해가 깊이 된 상태가 되어야 하기 때문에 자연스럽게 더욱 학습하게 되고 정리한 내용에서 틀리거나 놓친게 없는지 찾아보게 된다.
✅️ 모르는 것에 대한 불편함을 느낀다.
어떤 프로젝트를 할 때 누군가의 도움으로 진행하게 될 수 있다. 그 과정에서 모르는 것들이 가득할 때 단순히 프로젝트가 마무리 된 것으로 만족하는 사람이 있고 이해가 안된 부분이 불편해 마무리를 짓고도 계속해서 파 보는 사람이 있다. 왜 작동하는지 의심이 가는 코드를 보고 그냥 지나치는 사람보다는 왜 되는지 이해가 될 때까지 파보는 사람이 좋은 개발자로 성장할 확률이 더 높다.
✅️ 정도를 걷는 것에 두려움을 갖지 말자.
어떤 에러가 발생했을 때, 그게 왜 발생했는지 어떻게 해결을 할지 고민이 없이 그 상황만 우회하려고 하는 것은 우리를 나쁜 결과로 자주 이끈다. 물론 그게 무조건 나쁜 것만은 아니다. 그런 스킬이 필요한 지점도 분명 있다. 하지만 그런 상황이 아닐 때는 이런 습관이 리더빌리티를 망가뜨리고 사이드 이펙트를 양산시킨다.
✅️ 남의 이야기에 귀기울이자.
개발분야는 기술이 하루가 다르게 발전하고, 한 사람이 다 파악하는 건 무리다. 대부분 나보다 좋은 생각을 하는 사람이 많은 경우가 많다. 남의 이야기를 잘 듣는 방법을 다듬자.