💭 1. 이번 주엔 어떤 일들이 있었고, 그 속에서 나는 어떤 것을 느꼈을까
4월 2일(일)
📜 오늘도 CS공부
CS공부 복습과 함께, 프런트엔드 개발 면접에서 물어보는 질문들 위주로 공부했다.
핵심
1. 일급 객체 : JS에서 특별한 대우 받는 것들. 그중 하나가 함수 : 변수에 할당 & 인자로 전달 & 결과로 리턴
2. 고차 함수 : 인자로 전달하거나, 결과로 리턴하는 함수 (일급 객체의 일부)
3. var은 함수 레벨 스코프(호이스팅 O->선언되기도 전에 undefined) <-> const, let은 블록레벨 스코프 지원
가지가 흔들리지 않게 뿌리를 깊이 심자
4월 3일(월)
📜 프리온보딩 프론트엔드 챌린지 4월
오늘의 강의의 메인 주제는 VirtualDOM이었다.
VirtualDOM과 그 외의 유용한 팁들을 도 들을 수 있었다. 강연들을 여럿 듣다 보니 공통적으로 이야기하는 부분들이 있고, 그러한 부분들을 취합하고 적용해 보며 나만의 방법을 찾을 수 있게 되는 것 같다.
내가 아직 모르는 것들이 많고, 아직 배워야할 것들이 많다는 것을 느꼈다. 기초가 부족함도 느꼈다. 강사님은 'ES~'하면 툭툭 그것의 정외과 다른 것들과의 단점, 장점을 바로바로 말씀하시더라. 이러한 기초들을 꼭 탄탄하게 잡고 가야겠다고 생각했다.
앞으로 해볼 것 / 공부할 것
1. 다음 프로젝트 때 Vite 써보기
2. Fiber(컴포넌트보다 작은 단위)에 대해 추가 공부
3. Reconciliation 추가 공부
4. "직접 회사에 지원해보기"
- 직접 회사에 지원해서 이력서 경험, 면접 경험 쌓는 것 강추
- 강사님의 경우 120개 지원 & 1개 합격임. 이렇게까지 해야 원하는 회사에 입사할 수 있음. 강사님은 첫 면접 때 아무 답변도 못함 -> 다음 면접 때 그러한 것들을 준비하며 차차 채워 나감. 이렇게 부딪혀봐야 함.
5. 알고리즘 -> 문제를 풀고, 시간복잡도 위주로 생각해 보기. 그리고, 최대한 많이 풀어보는 것이 중요
6. FE는 특히 네트워크 중요
7. 좋은 이력서 자주 보기 -> F-lab 이력서 추천
배운 점
1. 신입 -> 성능 개선에 대해 크게 바라지 않음. 이에 대해 지식을 아는 것이 중요 => 공식 문서 찾아보기
2. Github 코드 많이 봄. 이 사람이 실제로 코드를 어떻게 짰는지 (PR로) 봄 => 매 PR 올릴 때 신중하고, 성실히, 면접관님이 볼 것이라는 것을 생각하며 올리자.
3. 요즘은 웹뷰 많이 하는 추세 => 반응형, 다양한 디바이스 대응 많이 알고, 많이 해보는 것이 중요
4. 신입 개발자의 경우, "성실도, 꾸준함, 성장 가능성"이 매우 중요. 블로그, Github 관리하는 것이 매우 중요함. => 블로그에 주 1번씩은 꼭 기술 내용 올리기 (지난 프로젝트/새로 배운 내용들 바탕으로)
5. 코드를 잘 짜기 위해서는, 잘 짜인 코드를 봐야 함 => github의 star 많은, 좋은 코드들 많이 보기
6. React Native << React 추천 (RN은 잘 안 뽑음)
7. Next.js보다는 언어인 Typescript에 대해 먼저 더 깊게 배우기
8. 현업에서는 state보다 Redux 선호 => Redux 더 깊게 공부하기
9. 커피챗 : 관심 있는 척하는 것이 중요 => 질문 폭탄하기
> 지난번 커피챗 때 질문 거의 안 하고 상대방 말만 듣거나, 내 이야기만 했던 기억이 난다. 커피챗이 이런 거구나. 다음번 커피챗 할 때는 질문도 많이 하고, 적극적으로 이야기를 이끌어보자.
10. 오픈소스 경험 : 있으면 매우 유용함
느낀 점
강연에서 가장 인상 깊었던 부분은 'chatGPT는 개발자를 절대 대체하지 못한다'라며 단호하게 말씀해 주시는 부분이었다. 강사님은 실제로 강연 중에도 chatGPT에 질문을 여럿 해서 우리에게 알려주셨고, 이처럼 'chatGPT를 잘 활용하는 개발자'가 되면 된다고 말씀하셨다. '정말 chatGPT가 개발자를 대체하게 되는 것이 아닐까' 걱정을 많이 했었는데, 이러한 걱정을 단칼에 해결해 주셨다.
요즘 할 것들이 많고, 슬슬 시험 기간이 다가오고 있어서 들을까 말까 고민을 많이 했었는데 듣기로 결정한 것은 너무나 잘한 선택이라 생각한다. 앞으로의 방향성을 재조정하고, 배워야 할 새로운 것들을 알게 되며, 평소에 고민하던 것들에 대한 마침표를 찍었다. 강사님의 쿨한 성격과 빠른 강의 진행이 너무나 마음에 들었다. 중요하지 않은 부분은 빠르게, 중요한 부분은 충분히 고민하시고, 찾아보시고 답변해 주시는 부분이 수강생을 생각해 주시는 마음이 너무나 잘 느껴졌다. 게다가 같은 프런트엔드 개발자 수강생이 600여 명이나 되어 더 열심히 수강하는 데에 큰 동기부여가 되었다. 앞으로도 이런 강연을 잘 찾아서 수강하고, 강연에서 배운 점을 꼭 몸에 녹여내야겠다.
4월 4일(화)
📜 프리온보딩 커리어 킥오프 - 면접 특강
오늘은, 프리온보딩 커리어 킥오프 완주자에 한해서 제공되는 면접 특강을 수강했다. 오늘도 역시 너무나 알 속이 가득 찬 강의였다. 나중에 꼭 원티드로 지원 많이 많이 넣고 애용해야겠다는 생각이 들었다. 이렇게 질 좋은 강의를 무료로 제공해 주다니, 너무나 감사하다.
핵심
1. 멘털을 지키는 것은 준비와 연습이다.
=> 기술 면접 스터디에 가입했다. 이제 곧 시험기간임에도 면접에 취약한 나를 극복하기 위해 가입했다. 일단 지금은 기술 면접 스터디(주 1회 1시간)만 하고, 시험 끝나고 스피치 스터디, 독서 스터디 등 다른 스터디에 가입하며 글쓰기, 말하기 실력을 키워보도록 하자.
2. 사람을 평가하는 데 있어서 시각적 요소(용모, 표정, 제스처)가 무려 55%를 차지한다. + 답변 시 아이컨텍, 자신감 있는 제스처, 밝은 표정, 힘없는 목소리가 중요
=> 나는 말할 때 안 좋은 습관으로 몇몇이 있다. 집중해서 말할 때 인상을 찌푸린다던가, 땅을 쳐다본다던가.. 이런 건 연습으로 고쳐야 한다. 1번처럼 준비와 연습을 수없이 많이 하도록 하자.
3. 면접은 서류에 기재되어 있는 내용은 ㅣ사실 확인과 구체적인 검증을 위해 시행한다. 이에 면접을 염두에 둔 서류를 작성해야 한다. 다른 사람의 자소서 복붙 X, 거짓으로 경험 만들기 X
=> 사실 지난번 동아리 지원서에서 내 자기소개서의 내용에 약간의 과장을 보탰다. 자소서 내용들을 기반으로 기술 질문들을 하였으나 하나도 답변하지 못해 나의 밑천이 드러나게 되었다. 내 자기소개서를 정말 '나를 표현하는' 자기소개서로 고치고, 그에 "완벽히" 준비하도록 하자.
4. 가장 어려웠던 경험 -> 인간적인 갈등 비추 (이는 주관적임)
5. 지원 동기 : 회사에 대해 열심히 공부하고, 이 내용을 기반으로 답변하기
회사의 경쟁력(시가총액, 유저 수 등 구체적인 수치 적용) + 입사 후 포부(언제? 1년 후/3년 후, 이것이 회사의 전략적 우선순위에 맞는가?)
4월 5일(수)
📜 Vite?
핵심
1. JS Engine : 단일 스레드, 즉 동시에 하나의 작업만을 수행 가능 -> Call stack, Task Queue, Heap을 이용하여 동시에 실행하는 것처럼 실행
1.1 Call stack : 메서드가 실행되면 push, 끝나면 pop
1.2 Task Queue : Web API(setTimeout, Promise..)등 비동기 호출되는 함수들이 enqueue, Call stack이 비면 dequeue
2. package.json : 프로젝트의 의존성 관리(버전 정의), 구성 설정(이름, 저작권 정보 등), 스크립트 관리(yarn dev, yarn build 등)
3. RESTful API : HTTP프로토콜을 기반으로 한 웹 서비스 아키텍처 스타일 중 하나
📜 회사가 뽑고 싶어 하는 개발자
배운 점 / 앞으로 실천할 점
1. 블로그 > 본인의 생각, 경험을 적는 것이 중요
소재 : 개발 일기, 디버깅 과정, 삽질기, 의견, 고찰, 복잡한 비즈니스 로직 구현 이슈, 힘들게 한 버그, 트래픽 이슈
=> 프로젝트 끝나고 적을라 하면 기억이 안 남. 프로젝트 진행 중 제 때 적는 것이 중요
=> 새로운 기술(Vite, React Query)등을 사용하며 이에 대한 개발 일기 작성 시작
=> + 어려워 보이더라도 하고 싶은 게 있으면 삽질을 하고, 그에 대한 일기를 블로그에 작성하자. 그럼 남는 게 왜 없는가, 남는 건 만들어 내며 된다.
2. 매우 구체적으로 공부할 것 : 내가 프로젝트에서 사용한 기술의 원리, 왜 쓰는지, 그렇게 구현한 이유가 무엇인지 + 이력서 내용에 대한 복기
🌟 20대가 꼭 해야 할 것들
"20대는 30,40대에 잘 보내기 위해 준비하는 시간이다", "20대에 배운 것은 평생 써먹는다"
이 이야기를 듣고 정말 큰 공감을 했다. '운동이나 요리할 시간에 내 진로인 개발을 더 해야 하나?', '식단 관리 해서 뭐 하나?'라는 생각이 가끔 든 적이 있다. 그런데 이 이야기를 듣고 이 질문에 대한 결론을 내렸다. 나름 잘 살아오고 있던 것 같다. 식단 관리, 운동, 요리 등 취미는 지금 20대를 위한 것도 맞지만, 그 후인 30대, 40대, 향후 70년을 살아갈 나를 위해 하는 것이다. 앞으로도 꾸준히 잘하도록 하자, 미래의 나를 위해 :)
글쓴이가 말한 것처럼 20대 때 배운 취미, 새로 할 수 있는 게 생기면 30대에 들어가서 큰 심리적 안정을 준다고 한다. 내가 지금 하는 취미는 무엇이 있을까, 그리고 할 수 있는 건 어떤 게 있을까. 그리고 앞으로 하고 싶고, 배우고 싶은 건 어떤 게 있을까. 한 번 시간을 가지고 곰곰이 생각해 봐야겠다.
"인간관계 편식" 나도 돌이켜보면 인간관계 편식을 하고 있었다. 나와 다른 성향이라면, 다른 관점이라면 가깝게 지내려 하지 않았던 경향이 있었다. 20대가 가장 다양한 부류의, 다양한 사람들을 만날 수 있는 마지막 시기라고 한다. 생각해 보면, 30대, 40대 아저씨, 50대, 60대 할아버지가 되면 만나게 될 사람들은 주변 직장인, 혹은 주변 이웃들밖에 없을 것이다. 앞으로는 나와 다른 성향의 다른 관점을 가진 사람이어도 꾸준히 교류를 하려 '노력'해보자.
4월 6일(목)
📜 프런트엔드 온보딩 챌린지 2/4
추가로 공부할 것 / 새롭게 할 것
1. reducer, contextAPI에 대해 심화공부
2. React18에서 추가된 것 추가 공부하기 : 쓸모는 크게 없음 but 새로운 기술에 관심이 있다는 것이 중요
3. 커뮤니티 활동 추천 : 글또(글 쓰는 미친놈) -> 실력 뛰어난 개발자 많음, 커리어리 글
4. Linked In에 나를 표현해서 알리기 -> 커피챗 요청오기도 함
5. 좋은 코드를 보는 것이 중요 : sendbird 추천
6. 아토믹 디자인 패턴
7. 지난 프로젝트를 리팩터링 해서, 이걸 블로그에 작성하기 : PR보다, 블로그를 공들여 쓰는 것이 중요. 블로그는 직접 눌러봄
블로그에서 중요한 것은 내용보다는 꾸준함. 또, 점점 발전하는 모습이 보이는 것이 중요
새롭게 배운 점
1. state변경 -> setState((prev)=>(prev+1)); 이처럼 사용하기
2. 모든 상태관리 라이브러리를 알 필요 없음. 내가 갈 회사가 쓰는 라이브러리, 내가 사용했던 라이브러리 위주로 공부할 것
3. 상태 관리 라이브러리 외에는 라이브러리를 많이 쓸 수 있다고 좋은 이점은 없음 (요즘은 라이브러리가 잘 되어있어서 사용하기 너무 쉬움)
느낀 점
가장 인상 깊었던 멘트가 있다. 부트캠프 동기 중에 연봉 2800으로 시작해서 현재 8000까지 올렸다고 한다. 첫 직장이 그렇게 중요한 게 아니라는 것을 느꼈다. 내가 할 수 있는 최대한으로 나를 끌어올리자. 그리고, 첫 직장이 아쉽더라도 절대 포기하지 않고 올라가려 노력하자. 이 게임은 첫 직장까지의 단거리 달리기가 아니라, 먼 커리어까지 보는 장거리 마라톤이다.
강사님 "큰 회사는 적성에 안맞는게, 1-2억으로는 성공할 수 없음. 스톡옵션으로 성공하고 싶음. 그래서 지금 스타트업에 있는 것"와우. 매우 인상 깊었다. 미래가 유망한, 그런 스타트업에 입사해서 스톡옵션을 받아 대박을 노려볼 수 있구나. 전에 커피챗 했던 분도 웬만한 대기업보다 연봉 많이 받는다는데.. 탐난다, 스타트업.
🌟 방울토마토 vs 토마토
결론 : 방울토마토가 더 좋다. 그리고, 루테인은 꼭 필요한 사람(눈이 질병 있는 사람)이 아니라면 효과 없다.
4월 7일(금)
📜 CS공부
오늘의 핵심
1. react-query를 사용하는 이유 : 서버에서 데이터를 가져오는 요청의 관리, 로딩 상태 관리, 상태 업데이트 => React Query없이 Axios Api를 이용하여 충분히 가능한 기능들이지만, 이러한 데이터 요청과 관련된 boilarplate 코드를 제거함으로써 코드의 가독성과 유지 보수성을 향상시킴
2. Atomic Pattern : 웹 디자인을 작은 단위로 분해하여 각각의 요소를 독립적으로 설계하고, 조합하여 전체적인 디자인 완성
3. RTK : Redux의 boilarplate 코드 간소화, Immuatble(불변성) 업데이트, 간편한 비동기 처리, DevTools 제공
🌟 강아지 산책 팁
오늘 이 내용을 바탕으로 집에서 깡돌이에게 목줄을 메고 산책 훈련을 해봤는데 먹이 들고 있을 때만 따라오고 그 외에는 따라오지 않는다 ㅜㅜ. 먹이를 주면 또 안움직인다. 집에서도 이렇게 말을 안들으니 밖에서는 더 말을 안듣지.. 밖에서 산책하기 전에 우선 집에서 훈련을 자주 시켜야겠다.
4월 8일(토) : 오늘은 OFF
😊 2. 이번주를 돌아보며
🎖️ 이번 주 이룬 성과는?
1. 강의를 수강하며 필기를 열심히 함
2. 하루 빠짐 없이 꾸준한 CS공부와, 틈틈히 알고리즘 문제를 풀음
❤️🔥 이번 주의 아쉬움은?
1. 마감기한을 안정하고 작업을 진행하는 탓에 여유롭게 작업을 진행할 때가 있다. 항상 '몇 분안에 끝내겠다' 시간을 정해놓고, 후다닥 할 일을 끝내자. 그리고 쉬자.
🏃♂️ 다음 주의 목표는?
1. 앞으로 하고 싶고, 배우고 싶은 건 어떤 게 있을까. 한 번 시간을 가지고 곰곰히 생각해봐야겠다.
2. "직접 회사에 지원해보기"
- 직접 회사에 지원해서 이력서 경험, 면접 경험 쌓는것 강추
3. Vite 사용기 계속해서 작성
🚀 앞으로의 계획은?
1. Typescript, Redux, React18에서 추가된 것에 대해 깊게 공부하기
2. 반응형, 다양한 디바이스 대응에 대해 많이 알고, 많이 해보는 것이 중요
3. 시험 끝나고 스피치 스터디, 독서 스터디 등 다른 스터디에 가입하며 글쓰기, 말하기 실력을 키우자
4. 내 자기소개서를 정말 '나를 표현하는' 자기소개서로 고치고, 그에 "완벽히" 준비하도록 하자.
5. 다양한 블로그 글 작성 : 개발 일기, 디버깅 과정, 삽질기, 의견, 고찰, 복잡한 비즈니스 로직 구현 이슈, 힘들게 한 버그, 트래픽 이슈, 지난 프로젝트를 리팩토링
- 블로그에서 중요한 것은 내용보다는 꾸준함. 또, 점점 발전하는 모습이 보이는 것이 중요
2023.03.02 - [개발 일상/개발 이야기] - [개발 Life] 이제는 3학년, 1학기 나의 목표 (3/2 ~ 6/14)
새로운 한 주도 열심히 살아보자 :)
뜨거운 열정보다 중요한 것은 지속적인 열정이다.
-마크 주커버그-
'개발 일상 > 개발 회고' 카테고리의 다른 글
[개발 회고록] 5월 1주차 (0) | 2023.05.07 |
---|---|
[개발 회고록] 4월 4주차 (0) | 2023.05.02 |
[개발 회고록] 4월 3주차 (0) | 2023.04.23 |
[개발 회고록] 4월 2주차 (0) | 2023.04.16 |
[개발 회고록] 3월 5주차 (0) | 2023.04.02 |
[개발 회고록] 3월 4주차 (0) | 2023.03.27 |
[개발 회고록] 3월 3주차 (1) | 2023.03.19 |
[개발 회고록] 3월 2주차 (0) | 2023.03.12 |