THINK | "개발자"의 모습

Jisoo Choi·2021년 10월 7일
0
post-thumbnail

🕵️시니어 개발자

주변을 잘 보지 못하고 앞만 보고 열심히 달리는 주니어 개발자들에게 길을 알려주는 사람.
주니어가 보지 못하는 것을 봐주고 적재적소에 적용할 수 있도록 안내해준다.

💡 어떤이의 고민

자신의 작성한 코드가 곧 회사의 프로덕션으로 출시 및 배포가 되기 때문에 자신이 작성한 코드 품질에 대한 의구심을 가지고 있었다. 그렇기 때문에 코드 품질에 대해 배우고 해소를 하고 싶은 생각.

👩‍💻 실무적 코드

  • 요구 사항을 만족하는 기능을 구현하는게 실무적 코드라고 생각.
    • 문법 같은 것들을 크게 문제는 없지만(구현하는 사람의 생각과 철학이 코드 안에 담겨있기 때문에) 근본적으로 요구사항을 만족하고 덧붙여 품질 관련한 부분을 고려할 수 있다.
    • 요구사항을 구현하는 것은 당연할 수 있지만, 그 기능을 구현하는 데에는 각 개발자마다 다른 방법으로 구현한다.
  • 같은 목표를 이뤄나가는 것.
    예를들어 React개발자면 리액트 방식으로 해법을 제시할 것이고, Vue 개발자면 vue 방식으로 해법을 제시갈 것.

개인적인 느낌

  • 혼자서 개발한 프로젝트는 구글링해서 공식 문서나 코드를 참고해서 짜는 코드이고, 자신의 코드에 대한 의구심이 많이 들었다. 회사에 입사해서 투입된 프로젝트의 실무적 코드를 보고 그안의 객체 지향적 구조나 객체들간의 관계를 고려하며 짠 실무적 코드를 보며 체감적으로 느끼는 부분이 많았다. 머리를 꽝 한대 맞은 것처럼.
  • 실무적인 코드란 객체지향적이고 디자인 패턴에 충실한 코드
  • 컴포넌트화 잘 된 코드, 모듈화 잘 된 코드
  • 남이 보기 좋은 코드
  • 가독성, 유지보수성

위의 내용을 충족하며 유연함이 있는 코드를 잘 짜는 것이 시니어적인 능력이다.
프로젝트 개발중에 배포 하루 전날 수정사항이 발생할 수 있다. 그런 경우에 코드 전체를 수정하는 것과 수정할 기능 부분만 수정하는 것 중 단연코 후자가 더 효율적일 것이다.

전자를 경험한 경우 코드들을 어떻게 모듈화 할지 생각해보고 리팩토링 해보아야한다.

➕ 협업을 고려해서 testable한 코드를 짜야한다.

➕ 팀은 하나의 목적을 가지고 있다 보니 teamwork을 만들기 위해서 굉장히 많은 시간을 들인다. 각자가 하나의 목표에 대해 동일한 생각을 갖게 되도록 팀빌딩에 공을 들인다.

Hands On(하루에 다루는 코드량)

  • 시간을 많이 들이는 사람.
  • 왕성하게 개발하고 있는 분들이 자유롭게 의견을 낼 수 있는 조직이 좋은 조직의 터전.
  • 시니어가 개발은 안하면서 맨날 내 코드 보면서 이건 이래서 안돼, 라고 하면 좋은 개발 문화를 가졌다고 할 수 없다.
  • 소통이 잘되고 거리낌 없이 얘기할 수 있는 것. 같은 선상에서 여러 관점으로 토론해보고 결정할 수 있는 조직이 좋은 조직이라는 생각이 든다.

시니어의 삶

  • 협업하며 개발할때 기능 단위로 주어진 역할을 해야하는데, 회사나 조직 내에서 기대하는 역할 범위가 넓다 보니 마일스톤을 지키기가 쉽지 않다.
    • 마일스톤: 프로젝트 진행 과정에서 특정할 만한 건이나 표, 특정 프로젝트와 관련해서는 어떤 중요한 시점.

🧑‍💻주니어 개발자의 모습

배움의 의지가 있고, 성장하고 싶은 의지가 끓고, 그것도 함께 성장하고 싶은 마음을 가지고 있는 주니어 개발자.

  • 빠르게 빌드업 해서 비슷하게 만들어보는 것

성장하는 개발자

  • 지금 주어진 일에 대해 최선을 다하자
  • 질문할 사수도 없고 멘토도 아직 없지만, 내 자리에서 최선을 하자
    • 프로젝트의 전체적인 시나리오를 파악하자
  • 새로운 것과 관심있는 것을 계속 배우려고 노력하자
    - 한 가지 언어로 끝장을 보고 싶다!
  • 어떤 일이든 명확한 의도를 알고 접근하자
  • 충분히 고민하고 질문하자 (단, 현명하게 하자 🤔)

지금 나는 어떤 개발자인가, 앞으로 어떤 개발자가 되고 싶은가?


참고

https://velog.io/@danna-lee/우아한테크러닝-4기-나만의-노션-만들기feat.시니어봇-1차시
https://velog.io/@nibble/성장하는-개발자시니어-개발자

profile
👩‍🚀 No worries! Just record

0개의 댓글