Tech야, 놀자

Server-side Node.js with TypeScript

8개월 차 주니어의 짧은 회고

원하는 회사에 가기까지

코딩테스트

  • 많이 풀기
  • 스터디

면접

  • 아는 것은 다 말하기
    • 모르는 것을 아는 것처럼 포장하지 말자
  • 마지막 질문
    • 현재 재직자 분들에게 듣는 회사 이약
    • 면접동안 궁금했던 것을 질문

회사 적응기

모르는 게 너무 많아요

  • 내가 모르는 것을 정확하게 파악
    • 다른 사람이 이해할 수 있도록 명확히 설명 가능하도록
    • 추상어나 지시어를 사용하지 않ㄷ록
  • 혼자 고민하기
  • 멤버들에게 도움 구하기
    • 여러 방식을 생각해서 추천을 받기
    • 트러블 슈팅 공유

스스로 공부하기

  • 모르는 단어 / 개념 기록 + 공부 + 정리
  • 기초는 모든 일의 기반이 된다
    • 자료 구조, 운영체제, 네트워크, 프로그램 언어
  • 새로운 기술에 관심 가지지

커뮤니테이션

  • 기획자와 대화하기
    • 기능 구현이 힘든 경우, 이유 설명
    • 협의 찾기
  • 내 의견이 틀리면 어떻게 하지?
    • 근거가 있다면 말해보자
    • 내가 잘못 생각하고 있는 부분을 정정 받을 수 있음

실무 코드

  • 팀의 규칙을 그대로 따라하되, 왜 이렇게 쓰는지를 고심할 것
  • 내부 로직은 복잡해도 사용은 쉽게
  • 시니어분들의 좋은 코드를 본다
    • 유사한 코드를 작성해본다
    • 시니어의 코드를 수정한다면 망설이지 말 것
  • 레거시 코드들을 본다

typeScript와 함께한 2년

선택의 이유

  • PHP 기반의 기존 백 서버를 java 기반, node 기반 api로 개편
    • node의 경우 express 사용
  • 커뮤니테이션이 원활
  • 자바스크립트를 잘 쓰는 이의 경우 러닝커브가 낮음
  • 개발 시 컴파일이 필요치 않음

특징

  • 개발 기간은 짧고 생산력이 높다
  • ts-node
    • 개발 시에는 컴파일을 하지 않고 바로바로 실행
    • 배포 시에만 컴파일이 이루어짐

단점

  • 바꾸기 어려움
  • 배포할 때 풀 빌드를 해야함
  • 스캐폴딩이 어려움
    • 노드에 비해서는 절차가 필요

Scaffolding

DB를 이용한 프로그램에서 이를 기반으로 하는 MVC 구조의 CRUD 프로그램의 뼈대를 만들어주는 기능 의미

느낀점

세션 하나(야 놀자에서 레저를 판매하려고 할 때 생겼던 일? 관련한 것이었는데)는 일부러 요약하지 않았는데 음…. 솔직히 마지막 세션 때문에 해당 행사에 참여한 나로서는 얻은 게 많지 않았다.

세션이 하나 당 20분이라서 큰 영양가 있던 세션은 아니었던 것 같고, 예전에 뱅크샐러드인가? 기술 프로그램이라고 홍보했는데 실상은 채용 홍보 였던 그거랑 좀 비슷했다. 야놀자에서는 개발자를 채용 중이고 어쩌고…. 홍보가 세션 보다 길었던 것 같아서, 개인적으로 왜 내가 이 자리에…. 이 시간을 내어서 여기 있어야 할까 의문도 많이 들었다.