1분 자기소개
- 프로젝트 개요 3~5줄로 줄여서 말하기
- 장점 3가지를 나열하면 된다. 장점의 근거는 프로젝로 든다. 프로젝트는 2개 이상을 추천. 많아도 4~5개 이하로.
- 자기소개를 통해 면접 방향을 바꿀 수 있다.
틀리면 안되는 진짜 면접 질문
DB
- ERD: 연관관계, 자료형, 정규화(테이블을 왜 그렇게 쪼갰는지)
웹
- 자바스크립트는 00 언어이다? -> 프로토타입, 객체, 함수, 동작, 멀티 패러다임, 컴포넌트. 어떤걸 선택하던 우리의 코드와 결이 맞아야 한다!
- RESTful 하다? -> REST API에 대하여
패키지 구조:
- 대기업 쪽에서 관심이 많음
- 패키지구조를 왜 그렇게 짰는가를 물어본다.
- DDD: 도메인 주도 개발 (소프트웨어 공학 CS)
- 도메인: 쇼핑몰 예시) 회원 서비스, 구매 서비스, 결제 서비스
클린코드
- 클린코드는 무조건 정답이 아니다! 절대적으로 정답이라고 말하면 큰일난다.
- 공격질문1: 이 책이 정답이라고 생각하시나요?
- 정답: 중복 없는 코드(리팩토링, 모듈화), 가독성 좋은 코드(네이밍, 기능 단위 함수), 이해하기 좋은 코드
- 공격질문2: 여러분들에게 클린코드는 어떤 코드인가요?
네이밍
- 메소드는 동사
- 약어를 사용하지 않음
- 보편단어 사용하지 않음 result, sum, tmp, returnValue, value
- 만약 이름이 너무 길어진다면? 용도마다 다를 수 있다.
리팩토링
- 새로운 기능 추가 전!
- 안정성, 가독성, 이해도 등등이 이유이다.
- 에러를 찾을 때/ 잡을 때
- 시니어 분들이 많이 하시는 말씀
TDD
테스트 주도 개발.
단위/통합 테스트 코드 먼저 짜고 => 테스트 코드를 실패를 낸다. 그 다음 그 테스트를 하나씩 성공으로 만들어가는 것
찬성: 모든 테스트 케이스 고려 -> 에러 최소화, 어차피 테스트 케이스는 짤것임
반대: 테스트 언제 다 짜는가? 시간 오래걸림(비용), 현실적으로 모든 테스트 케이스를 커버할 수 없음
PT 면접
문제: setName("홍길동"); // 이름 설정
로직: name이 null 값(undefined) 이면 "홍길동" 이름 설정한다.
정답: 로직을 existName / setName으로 나눈다.
사이드 프로젝트 프론트엔드 백엔드 어떻게 준비?
- 프론트: 날씨 API 등의 외부 API를 써보는것
- 백엔드: 화면 안만들고, API 명세 + README
- 2주~ 한달 기간으로
CS 봐야할 것
- OS: 컴파일러, 메모리, 우선순위 프로세스, 스레드
- 네트워크: http, dns, 계층, tcp/ip
- Al/Ds: 리스트(스택, 큐..), 맵(해시..)
- 컴퓨터구조: 잘 안물어봄
- 디비: Q1. 외래키는 무조건 다른 테이블의 PK 여야 하나
Q2. 디비 트랜잭션 사용하는 상황
- 소공: 애자일/폭포수, CI/CD, 클라우드 환경, 개발 방법론(DDD..), 객체지향
후기
오늘은 라이브 수업으로 취업에 관련된 강의를 들었다. 면접이나 프로젝트 준비 CS 준비해야할 것등의 다양한 부분에서 정보를 얻을 수 있었다.
키워드: 프로그래머스 데브코스, 국비지원교육, 코딩부트캠프
'프로그래머스 풀스택 데브코스 > 데브코스 TIL' 카테고리의 다른 글
웹 풀사이클 데브코스 TIL 30일차 (0) | 2023.12.29 |
---|---|
웹 풀사이클 데브코스 TIL 29일차 (0) | 2023.12.27 |
웹 풀사이클 데브코스 TIL 27일차 (0) | 2023.12.26 |
웹 풀사이클 데브코스 TIL 26일차 (0) | 2023.12.22 |
웹 풀사이클 데브코스 TIL 25일차 (0) | 2023.12.21 |