nestjs 썸네일nestjs

2025-01-31

목차

  1. 인사와 일상 대화
  2. 실력 향상과 공부 방법
  3. 시스템 디자인과 대규모 트래픽 처리
  4. 개발자 역량과 기본기 중요성
  5. 문서화 및 커뮤니케이션 문화
  6. AI와 LLM 활용한 개발 방식 변화
  7. 코딩과 로직 정리의 본질
  8. 오픈소스 컨트리뷰션과 사이드 프로젝트 고민
  9. 커피챗 경험과 네트워킹
  10. 재미있는 개발 관련 링크 및 툴 소개

1. 인사와 일상 대화

  • 개발자들 간 자연스러운 아침 인사와 출근 준비 이야기 오갔음.
  • 간혹 시스템 오류, 로그아웃 문제 발생해 공유됨.
  • 채팅 봇(“채찍피티”)가 대답을 안 할 때는 ‘채찍질’이 필요하다는 유머도 있었음.

2. 실력 향상과 공부 방법

  • "많이 해봐야 실력이 늘어난다"는 의견이 다수.
  • 특정 강의(‘카카수 님 강의’) 추천 및 해당 강의가 효과적이라 언급됨.
  • “좋아요”를 누른다고 실력이 자동 상승하는 건 아니지만 동기부여나 간접적 학습 효과로 연결될 수 있음.
  • 일상적으로 글을 읽고 개발자끼리 소통하는 것도 실력 향상에 중요한 역할을 한다고 강조됨.

3. 시스템 디자인과 대규모 트래픽 처리

  • 시스템 디자인은 대규모 트래픽이나 동시성 문제를 해결하는 데 필수적임.
  • Duolingo 사례 공유:
    • 3,140만 명 사용자를 대상으로 슈퍼볼 광고 후 5초 내에 600만 개 알림 전송하는 난제였음.
    • 기존 시스템은 초당 10,000건 처리 가능했으나 800,000건/초 처리 요구를 맞춰야 했음.
    • Android 앱에서 동시 요청 폭증 문제(마치 DDoS 공격과 유사한 현상)도 있었음.
  • 시스템 디자인 질문의 본질은 기술 스택을 전부 아는지 여부보다, 처음 보는 문제가 발생했을 때 어떻게 진단하고 대처할 것인지에 중점을 둠.

4. 개발자 역량과 기본기 중요성

  • 불필요한 기술 스택을 무작정 외우기보다 기본 개념에 충실하고, 필요한 순간에 빠르게 습득할 수 있어야 함.
  • 실력은 많이 경험한 사람이 승리한다는 ‘백문이불여일타’(백 번 듣는 것보다 한 번 해보는 게 낫다) 원칙 강조.
  • 시스템 디자인 공부는 필요하지만, 신입 개발자에게는 실제 경험이 함께 수반되어야 한다는 의견도 존재.

5. 문서화 및 커뮤니케이션 문화

  • 에이스 백엔드 개발자는 문서화를 철저히 하며, ERD 설계와 Contract Driven Development(CDD)를 익히는 것을 권장함.
  • 문서화란 단순히 문서 작성만이 아니라 코드와 문서가 일치하도록 지속적으로 유지하는 문화가 중요함.
  • Docker 같은 도구로 로컬 환경 설정 및 로그 확인 체계를 갖추면 이슈 분석에 도움됨.
  • ‘문서화’가 개발의 중요한 태스크임에도 불구하고, 회사 문화가 이를 게으른 행위로 보는 경우가 있어 개선 필요성 제기됨.

6. AI와 LLM 활용한 개발 방식 변화

  • 프롬프트 주도 개발(PDD), 주석 주도 개발(CDD) 등 AI와 대화를 통한 개발 방식의 가능성을 토론함.
  • AI 모델별 특성 차이가 있어, 프롬프트 구성과 튜닝이 개발 효율에 큰 영향을 미침.
  • 로직 정리만 잘 되어있으면 AI가 코드를 생성하고 구체화해 줄 수 있어 개발 생산성이 올라감.
  • 다만 코드 수정과 디버깅 과정은 여전히 사람의 창의성과 논리 정리가 필요함.

7. 코딩과 로직 정리의 본질

  • 많은 개발자가 ‘코딩이 어렵다’고 느끼지만 진짜 어려운 것은 ‘문제를 어떻게 정리하고 해결할지 아는 것’임.
  • 로직 정리가 안 돼서 복잡한 조건문과 로직 꼬임이 발생, 코딩 난이도가 높아짐.
  • AI 도구는 로직 아이디어를 바탕으로 코드를 생성하지만, 결국 ‘무엇이 문제인가’에 대한 명확한 이해가 선행되어야 함.

8. 오픈소스 컨트리뷰션과 사이드 프로젝트 고민

  • 개인 시간 투자에 대해 오픈소스 기여와 사이드 프로젝트 중에서 고민하는 의견 많음.
  • 임팩트 측면에서 오픈소스 컨트리뷰션이 더 낫지 않냐는 반응.
  • 본인의 흥미와 성장 목표에 맞춰 선택할 필요가 있음.

9. 커피챗 경험과 네트워킹

  • 스타트업 HR로부터 받은 커피챗 요청에 대해 어떤 질문을 할지, 이야기를 어떻게 이끌지 고민하는 모습 관찰.
  • 커피챗은 단순 면담을 넘어 기술적인 대화, 경험 공유, 인사이트 교환 기회가 될 수 있음.
  • Linkedin, dev.to 등에서 꾸준히 글을 쓰며 네트워킹을 확장하는 것도 좋은 방법임.

10. 재미있는 개발 관련 링크 및 툴 소개

면접팁⚡

  • 가상면접 시스템 설계 질문 시
    • 모든 인프라를 완벽히 아는지 묻지 않음
    • 처음 보는 문제 발생 시 어떻게 상황을 진단하고 접근할지, 문제 해결 과정을 중점적으로 설명하는 것이 중요함
  • 시스템 디자인 이론을 단순 암기보다 상황에 맞춰 유연하게 적용하는 능력이 평가 대상임
  • 서비스 개선 사례를 말할 때는 실제로 벤치마크나 테스트로 개선 효과를 입증한 점을 함께 언급하면 신빙성이 높아짐
  • 문서화 및 커뮤니케이션 문화에 대해 자신의 경험과 생각을 구체적으로 이야기하면 좋은 인상 줌

링크🔗

#시스템디자인#개발자역량#AI개발#문서화#오픈소스#트래픽처리#커뮤니케이션#LLM#코딩로직#네트워킹