HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
🐣
프론트엔드 데브코스 3기 교육생
/
🎀
동영팀
/
☕
12월 22일 커피챗
☕

12월 22일 커피챗

날짜
Dec 22, 2022
요약
유형
커피챗

사진

notion image

대충 멘토님 폰 바꿀 때가 된 것 같다는 이야기..

  • 노트 10인데 커버가 분리된다..ㅠ.ㅠ
  • 어떤 폰으로 바꿀까 고민중이다.
  • 승훈님은 맥북이 불편해서… 윈도우로 갈 것 같다.
    • 멘토님 왈 : 리눅스는 어떠신가?
    • 점유율 1%…

멘토님 첫 출근

  • 인지부조화..
    • 개인의 처우는 인상이 되었지만, 회사 업무 환경이 하락된 듯한 느낌.. (건물 시설, 노트북, 모니터 등..)
    • 팀원들이 순수하다!
  • 며칠 적응해야할 것 같다..

(승훈) Node 해 두면 취업할 때 도움이 될까?

  • 그렇다!
  • 한국에서는 java가 대세가 맞지만 외국에서는 그렇지 않다.
  • 국가에서 Spring 프레임워크 기반이기 때문에 Java를 많이 수요로 한다.
  • 80~90%가 Java가 차지한다. 나머지 Python, Go, Node..
  • 백엔드는 언어의 환경에 영향을 많이 받는다.
    • Vue, React는 결국 JS인데, 백엔드는 언어 자체가 바뀌어버린다.
    • ML 서빙 → Python
    • 데이터 중심 → Go
    • FE와의 언어를 맞추기 위해 → Node
      • 공통적으로 쓸 수 있는 모듈, 인터페이스를 잘 만들어두면 프론트/백 둘다 사용할 수 있다.
      • 이것이 굉장히 큰 장점, 생산성이 훨씬 높아진다.
      • 웹 친화적이기 때문에 크롤링도 그래서 JS가 훨씬 편해졌다.
  • 그래서 Node가 죽진 않을거다.
  • 멘토님은 Node로 넘어가고 싶다!
  • 백엔드는 에러가 발생한다면, 치명적일 확률이 높다.

(은아) 프론트엔드가 C++로 작성하면 회사에서 이상하게 볼까?

  • 이사람은 인재다! 라고 볼 것 같다.
  • 하지만 프론트엔드 환경에서는 JS를 강제하는 곳이 많다.
  • 로우 레벨의 언어를 다룰 수 있는 사람은 엔지니어로써 굉장히 매력적이라고 생각하지만 현실과 괴리가 생길 수 있다. (언어 하나가 추가될 때 마다 출제자는 검수를 해야한다.)
  • 결론
    • JS - 51 : C++ - 49
  • 가고 싶은 기업을 정해라.
  • 스타트업 계열일 수록 JS를 뽑으려고 할 것 같다.
  • JS로 코테를 보면 코드스타일을 볼 수 있다.
  • 슬프지만..JS로 가잣….

프로젝트 진행 전 알아두면 좋을 꿀팁!

  • 프로젝트가 무엇인지에 대한 정의
    • 제한된 인력
    • 제한된 시간
    • 제한된 돈
    • 위 3가지 중 하나도 갖추지 못하면 프로젝트가 아니다.
  • 프로젝트 관리 측면에서 제한된 인력과 시간으로 어디까지 할 수 있는지를 산출해야 한다.
    • 개인 관점에서 자신의 능력을 과대/과소 평가하는 것
    • 협업 과정에서 서로가 자신은 1인분을 한다고 생각하는데, 이 둘이 협업을 진행할 때 5 / 3 / 1이 될 수 있다. (시너지 효과)
  • 프로젝트 구성 단계에서 프로젝트를 잘 기획해라.
  • 개발자도 기획 단계에 많이 참여하는 것이 좋다고 생각한다.
    • 개발자 입장에서 기능 관점에서 “이 서비스의 승부 포인트” 1~3가지는 있어야 한다고 생각한다. (A.K.A. 스타트업 사고방식)
      • 대기업에서는 이런 생각 가지면 안된다.. 하라는 것 해야 한다..
    • 얘 이거 아쉬운데? 불편한데? 하면서도 계속 쓰게 되는 것
    • 이 서비스가 여러 단점에도 불구하고, 이 서비스를 놓지 못하는 요소. 이게 바로 경쟁력이다.
    • ex) 리눅스
      • 카카오 안된다… 그래서 카카오 싫어한다.ㅎ
      • 도커가 네이티브로 돌아간다. 훨씬 빠르다.
    • 클론 코딩을 해도 “여기에 이 요소가 있으면 더 좋을 것 같아!”
    • 당근마켓도 이 중 하나
      • 타겟팅을 축소해서 기존 서비스에 특색을 넣었다.
    • 이런 포인트가 면접 때도 도움이 된다!
  • 유사한 메신저 서비스지만 슬랙은 폐쇄적 / 디스코드는 개방적
    • 서로 장단점이 다른데, 두 서비스의 장점만 합쳐서 “나는 이런 퀄리티까지 신경써서 개발해봤다”고 말할 수 있으면 좋다.
    • 비지니스, 도메인 관점에서 메리트가 있는 개발자라고 어필할 수 있다.
  • 2~3개는 돼야 이 고유한 특징들이 결합되어 무게중심이 생기고 서비스의 방향성이 생긴다.
    • 뱅샐 : 금융이지만 건강까지?
    • 배민 : 음식 배달로 시작했지만 lush, store 선물하기 등 사업이 확장된다.
    • 경쟁사 분석을 하다 보면 방향성이 비즈니스(사업) 방향성이 보인다.
  • 제한된 인력과 시간이 있으니.. 최소한 하나라도 잡아라!
  • 프로젝트 규모를 넓게 설정하지 말고, 메인 기능을 중심으로 확장시켜나갈 수 있게 기획해라.
  • ex) 로그인, 회원가입.. 뭐가 중요한가.. 기능 구현이 중요하다.
    • 백엔드가 api가 안준다? 그러면 그 때는 만들 수 있다.
  • 기타도 많다..
    • R&R, 협업 문화, 코드스타일 및 도구 통일, 용어 통일 등
  • 논의할 것이 많을 거다. 그렇지만 마라톤 회의를 하지마라!!
    • 굉장히 생산성이 안좋다.
    • 회의 시 agenda와 제한시간을 설정해라.
    • 커피챗과 정반대로 하면 된다! ^_^!
    • 회의를 시작하면 제한 시간 내에 agenda에 대한 결론을 내야한다.
    • 짧게는 30분 ~ 쉬는시간 포함 2시간
    • 아니면 아예 쪼개서 해라!
    • agile이 이런 식이다. 필요 시에 진행한다.
    • 차라리 필요하다면 1시간씩 하루에 회의 4번을 하는 것이 낫다.
  • 모두가 동등한 목표를 지녀야 한다.
    • 내린 결론을 구성원 모두가 이해하고 끝나야 한다. (모두에게 공유되어야 한다. 한 팀이기 때문에)
    • 최소한 모두가 납득은 해야한다.
    • 기획 시에 납득을 못하는 사람이 있다면 무조건 망하는 프로젝트이다.
    • 그래야 지속할 수 있다.
  • 비협조적인 팀원..
    • 회의 시작 전에 말하고 시작한다.
    • 무조건적인 안돼요는 안돼..
    • 누군가의 아이디어에 반박하기 위해서는 더 개선된 새로운 아이디어를 내야한다.
  • 회의가 정체된 느낌이라면 확실하게 자르고 다시 시작하는 것이 더 좋다.
  • 개발자가 개발도 물론 잘해야하지만, 개발 외적인 이런 부분도 잘해야 한다!
  • 잘하는 개발자일수록 커뮤니케이션 능력이 좋다.
    • 능력있는 프로그래머일수록 성격이 더럽다는 말도 있다..
    • 둘 다 맞는 말…

문제해결 프레임워크

  • cynefin framework
  • 문제에 대한 복잡도와 해결 방식
    • 4가지로 구분한다.
  • 원인과 문제가 인과관계가 명확하다.
  • 원인은 알겠는데, 왜그런지 모르겠다.
  • 그냥 모르겠다ㅋ
  1. 간단한 것
  1. 어려운 것
  1. 복잡한 것
  1. 혼란스러운 것
  • 이렇게 문제를 바라보는 방식이 있다.
  • 경험을 바탕으로 액션을 취해보는 방식으로 해결 방법을 찾아날 수 있다!