본문 바로가기

All posts123

앞으로 잘 클 수 있을까? 🌟 신입 개발자 적응기 / Week 2 : 찰나였던 설렘, 다시 엄습하는 불안감 💫 자괴감과 자신감의 무한루프 안 그런 사람이 어디 있겠느냐만, 나에게 자신감과 자괴감은 비례적으로 상승하는 두 요소이다. 자신감이 높아지면 그 상승폭만큼 자괴감도 뒤따라 높아진다. 그래서 외부에 티는 내지 않아도 내 상태는 늘 "오, 나 쫌 하네?" 와 "나 따위가 개발자라고..." 중 하나이다. 사실 취업하기 직전까지는 자괴감에 빠져있다가, 취업 소식을 들은 직후부터 입사 첫날까지는 자신감 버프로 맘편히 놀고 먹었다. 그러다 입사한 뒤부터는 자신감이 계속 하락해 절망의 계곡으로 향하는 중이다. 사실 2주차에도 역시 한 일이 별 건 없었다. 팀 스택에 익숙해지기 위해 TS 와 Nest 공식문서를 읽어내려갔고, 본격적으로 S.. 2021. 11. 8.
[CS] REST API 개요 ✨ REST API 개요 REST API 는 Representational State Transfer API 의 약자이다. REST 와 API 는 따로 구분해서 생각하면 좋은데, REST 는 하나의 아키텍쳐 (방법론) 에 가깝다. 그렇기 때문에 몇 가지 주요 원칙들이 존재하며, 이를 잘 지킨 API 를 "RESTful" 하다고 표현한다. API 는 Application Programming Interface 의 약자로, 서버가 클라이언트에게 제공하는 리소스 활용 방법이 담긴 인터페이스이다. 📍 API API 를 처음 들으면 서버, DB 의 개념과 헷갈릴 수 있다. 하지만 API 는 서버도 DB 도 아니다. 서버와 DB 가 제공하는 데이터 또는 기능에 접근할 수 있도록 해주는 안내판에 가깝다. 가령, vo.. 2021. 11. 4.
문서와 레거시의 더미, 그리고 알잘딱깔센 취준기 시리즈를 종료하고 한동안 후기글은 쓰지 않으려 했는데, 관성을 깨는 것은 생각보다 큰 용기가 필요한 일이었다. 용기가 부족했던 나는 결국 또 한 주를 정리하는 신입 적응기 시리즈를 들고왔다.. Welcome..! 🌟 신입 개발자 적응기 / Week 1 : "내 자리 찾기" 를 위한 고군분투 💫 구성원, 팀원으로서의 자리 - 내향형 인간에게 새로운 사람을 만나 편하게 대하는 것은 많은 에너지를 요하는 태스크다. 하물며 동시에 여러명을 새로 만난다는 것은.. 진을 빼는 일임에는 틀림없다. 첫 출근날이 특히 고됐던 이유는 하루종일 새로운 사람을 멈추지 않고 계속 만나야 했기 때문이다. 신규 입사자 동기, HR 팀, 소속 팀원들, 팀장님 등 머리에 입력해야 하는 "new Person" 데이터가 많아질수록.. 2021. 10. 31.
[Network] DNS 개요와 동작 방식 ✨ DNS 개요 DNS 는 Domain Name System 의 약자이다. 모든 서버에는 고유의 IP 주소가 할당되는데, 사용자들이 특정 사이트에 접속할 때마다 이 주소를 외워서 들어가는 것은 힘든 일이다. 때문에 각 IP 주소에 문자열로 구성된 도메인 (domain) 을 연결지어 활용한다. 예를 들어 사용자의 로컬 IP 주소는 127.0.0.1 인데, 매번 이 일련의 숫자를 브라우저에 치고 들어가는 것보다 localhost.com 이라는 직관적인 도메인 주소를 찾아 들어가는 것이 훨씬 편할 것이다. 이것이 도메인이 필요한 이유이다. DNS 는 이처럼 컴퓨터들이 문자열 도메인을 통해서도 최종 목적지까지 도달할 수 있도록 IP 주소와 도메인을 매핑해놓은 주소 체계이다. 보통 'url' 을 하면 http:/.. 2021. 10. 28.
[Javascript] Generator (제네레이터) 📍 Intro 지난 글에서 다루었던 Iterator 와 인접하게 사용되는 개념 중 하나가 바로 generator (제네레이터) 이다. 제네레이터는 ES6에서 도입되어, 코드 블록의 실행을 일시 중지했다가 필요한 시점에 재개할 수 있는 특수한 함수이다. 이번 글에서는 generator funciton 과 generator의 활용 방법을 살펴보고자 한다. ✨ Generator MDN 에서 정의하는 generator 는 "generator function (제네레이터 함수) 로부터 반환된 값이며 iterable, iterator protocol 을 준수하는 값" 이다. 위의 정의에서 표기된 Generator function 의 주요 특징은 다음과 같다. 1. 함수 호출자 (caller) 에게 함수 실행의 제어.. 2021. 10. 26.
[수료 + 45] 취뽀, 그리고 10월 9일 ~ 10월 18일의 기록 그렇다. 취업을 했다.. 여러가지로 정신이 없었기 때문에 뒤늦게 밀린 취준 기록과 취뽀 소식을 남겨본다. 10.09 ~ 10.18, 취뽀 이전까지의 취준 기록 ✅ 백엔드 스터디 (네트워크 & 알고리즘) - 일곱, 여덟번째 스터디 진행 - 교재 Chapter 6 (로드밸런서), Chapter 7 (NAT) ✅ 1:1 JS 스터디 - JS deep dive Chapter 34(이터러블), 14(전역 변수의 문제점) ✅ 알고리즘 연습 - 1단계 문제 6개 - 2단계 문제 2개 - 3단계 문제 1개 ✅ 기술 블로그 운영 - 네트워크 글 1개 포스팅 - JS 글 1개 포스팅 - SQL 글 1개 포스팅 - 알고리즘 글 3개 포스팅 ✅ pair review web 프로젝트 - post 요청 라우팅 & 클라와 연결 -.. 2021. 10. 24.
[Network] NAT/PAT ✨ NAT (Network Address Translation) 와 PAT (Port Address Translation) NAT 는 주로 회사나 통신사 장비에서 사용되며, 말 그대로 네트워크의 주소를 변환하는 기술이다. 기본적으로는 하나의 네트워크 주소를 다른 하나로 변환하나 (1:1), 이는 IP 주소가 고갈되는 문제를 초래할 수 있어 여러개의 주소를 하나의 주소로 변환하기도 한다. 이때, 후자를 NPAT (혹은 PAT) 기술이라고 칭한다. 📍NAT 기술의 사용례 - 사설 IP 공인 IP 전환 (가장 빈번) - 사설 IP 사설 IP 전환 - 공인 IP 공인 IP 전환 - IPv4 IPv6 전환 (AFT: Address Family Translation 기술, NAT 의 일종) ✨ NAT 의 용도와 필.. 2021. 10. 21.
[프로그래머스] 피보나치 수 📍 문제 설명 피보나치 수는 F(0) = 0, F(1) = 1일 때, 1 이상의 n에 대하여 F(n) = F(n-1) + F(n-2) 가 적용되는 수 입니다. 예를들어 F(2) = F(0) + F(1) = 0 + 1 = 1 F(3) = F(1) + F(2) = 1 + 1 = 2 F(4) = F(2) + F(3) = 1 + 2 = 3 F(5) = F(3) + F(4) = 2 + 3 = 5 와 같이 이어집니다. 2 이상의 n이 입력되었을 때, n번째 피보나치 수를 1234567으로 나눈 나머지를 리턴하는 함수, solution을 완성해 주세요. 📍 제한 사항 n은 2 이상 100,000 이하인 자연수입니다. 📍 입출력 예 n return 3 2 5 5 📍 입출력 예 설명 피보나치수는 0번째부터 0, 1, 1.. 2021. 10. 14.
[Javascript] Iterable (이터러블) 📍 Intro Iterate 는 '반복하다' 는 사전적 의미를 가지고 있는 용어로, 프로그래밍에서는 주로 '반복 가능한 객체' 를 의미한다. 자바스크립트에만 존재하는 개념은 아니지만, 자바스크립트의 이터러블 개념을 학습하면 다른 프로그래밍 용어에도 쉽게 적용할 수 있다. ✨ ES6 에 추가된 Iterable ECMAScript 는 자바스크립트를 표준화하고 토대를 구성하기 위해 만들어진 표준화된 스크립트 프로그래밍 언어이며, ES6은 6번째 ECMAScript 버전을 의미한다. ES6 은 2015년에 제정되었는데, 이전까지 문제가 되었던 많은 부분들이 해결되고 기능이 대거 추가되어 자바스크립트의 가독성과 유지보수성을 향상했다. ES6에는 기존에 없었던 Scope, parameter handling, 구조분.. 2021. 10. 13.