본문 바로가기

전체 글83

[주니어 개발자 이직 2] 제안받기 or 지원하기 이직을 준비하기 시작하면서 지원할 루트를 찾아보기 시작했다. 대기업 공채 지원은 해본 적이 없어서 제외했다. 이 과정에는 최소 2개월정도 잡는 것을 추천한다. 1. 링크드인 활용 이력서가 준비되었다면, 가장 먼저 링크드인 프로필을 정비하고 구직의사를 오픈해둔다. 이력과 기술스택을 잘 정리해서 올려두면 된다. 앞서 작성한 이력서의 첫페이지를 복붙하면 금방 끝난다. 이렇게 해두면 많은 헤드헌터들이 연락을 해온다. 개중에는 내 스펙과 완전히 동떨어진 경우도 있지만, 채용 사이트에서도 보지 못했던 괜찮은 제안들도 꽤 들어온다. 개인적으로는 헤드헌터를 통해 지원하는 것을 선호한다. 헤드헌터를 끼고 이직하는 경우 직접 진행하는 것보다 전형이 빠르게 진행된다. 피드백이 느려 답답한 경우가 적어서 좋았다. 다만 면접 .. 2020. 12. 20.
[주니어 개발자 이직 1] 이력서 쓰기 * 저의 매우매우!! 주관적인 견해입니다. 물론 스펙이나 경력이 화려하다면 그것만으로도 빛나는 이력서가 되겠지만, 화려한 경력이 없는 나는 이력서에 꽤 노력을 기울였다. 그 결과 주변 주니어 친구들에 비해 서류 합격률이 꽤 높아졌다고 생각한다. (진짜 가족관계부터 쓰는 사람이 있더라...) 아무튼, 내가 생각하는 좋은 이력서 작성하는 방법을 정리해보았다. 0. 나를 어필하는 수단 이력서는 "나를 어필하는 수단"과 같다고 생각한다. 당연한 말 같지만, 서류합격 뿐 아니라, 이후 면접장에서 나의 어떤 점을 어필하고 싶은지 생각해서 작성하는 것이 중요하다. 예를 들어 "평소에도 공부를 게을리 하지 않는 성실한 성격"을 어필하고 싶다면, 단순히 "평소에도 공부를 게을리 하지 않는 성실한 성격입니다."라는 문장을.. 2020. 12. 15.
[주니어 개발자 이직] 내가 이직을 준비한 방법들 주변의 주니어 개발자 지인들을 보면, 이직에 애를 먹는 모습을 많이 보아왔다. 실력이 좋은데도 서류전형에서 연거푸 탈락하는 사람도 있었고, 다른 기회가 없었다며 원치않는 회사의 면접만 보러다니는 사람도 있었다. 나도 누구나 들으면 우와! 하는 대기업에 다니거나 하는 것은 아니지만, 적어도 스스로 아쉽지 않은 이직을 해 왔기에 내 생각을 공유하고 싶어 글을 작성하게 되었다. 나는 이직이란 '나'라는 상품을 파는 것과 비슷하다고 생각한다. 상품을 좋은 곳에 비싸게 팔려면 어떻게 해야할까? 좋은 상품이 되는 것은 단기간에 이루기 어려우니 우선 제외하고, 이미 준비된 상품을 팔기만 한다고 가정해보자. 내가 직접 만든 머그컵을 판매한다고 상상해보겠다. 우선 매력을 잘 드러낼 수 있는, 깔끔하게 잘 찍은 사진과 상.. 2020. 12. 15.
VS Code에서 Prettier 사용시 자동저장이 동작하지 않을 때 settings.json에서 formatOnSave도 바꿔줬고 editorOnSave도 해줬고 enable도 해줬는데 왜! 저장하면 자동으로 포맷팅이 안되는거야! 라고 헤매는 중이라면? Settings > "default formatter" 검색 > Default Formatter를 esbenp.prettier-vscode로 변경해주면 된다. 2020. 11. 23.
[윈도우 키보드 + mac] Caps Lock을 한영키로 사용하기 karabiner를 설치한다. Big Sur로 업데이트하려는 경우, 반드시 karabiner부터 업데이트하기를 권장한다... 엉망된다. karabiner-elements.pqrs.org/ Karabiner-Elements A powerful and stable keyboard customizer for macOS. karabiner-elements.pqrs.org 내 경우 리얼포스 윈도우 버전을 사용중이며, 아래와 같이 사용하고 있다. 추가로 command + space를 한영변환키로 사용하고 있음. 어떤게 더 편한지 찾는중이라서.. 카라비나 설치후 다음과 같이 설정해준다. caps lock -> f18 왼쪽 command -> 왼쪽 option 왼쪽 option -> 왼쪽 command 시스템 환경설정.. 2020. 11. 15.
[React + Typescript] Typing Tips 리액트 타이핑 팁 백엔드에서 라이트하게만 타입스크립트를 사용해오다가, 리액트에서 사용하려니 너무 어려웠다. 백엔드에서는 거의 내가 직접 만든 것들에 대해서만 타이핑하면 되었는데, 리액트에서는 리액트 컴포넌트까지 타이핑해야 하다보니 어떤 타입인지 제대로 입력하기가 헬이었다. 결국 처음엔 any로 도배하면서 구현했다가, 하나씩 실마리를 잡을 때마다 다른곳들을 채워가는 중... 그래서, 리액트+타입스크립트 쌩초보 입장에서 팁을 공유하고자 작성한다. 유용하다고 생각되는 것을 찾을 때마다 조금씩 보완할 예정이다. 💡 나만 몰랐던 이야기(?) RouteComponentProps은 라우트를 통해 렌더링되는 컴포넌트의 기본 prop이다. history, location, match, staticContext?로 구성되어 있다. Reac.. 2020. 11. 15.
[React] Warning: Component update a component Bar while rendering a different component 발생 조건 특정 컴포넌트 렌더링 시 mobx 스토어의 값을 변경하도록 함 내 경우 /bar/edit 라우트로 접속 -> bar edit 화면 렌더링 -> 스토어의 menu 값을 'edit'으로 변경하는 상황이었음 해당 스토어 값을 통해 다른 UI를 보여줘야 해서 이렇게 구현하게 됨 발생 원인 렌더링 중 state가 변경되면 안됨. state 변경시 다시 렌더링이 일어나므로 당연한거였다... 해결 방법 컴포넌트 렌더링 시 store 또는 state 값 변경이 필요한 경우, useEffect 안에서 값을 변경한다. useEffect(() => { menu.changeMenu(Menu.Edit); // 스토어의 값을 변경하는 코드(setState) }, []); 2020. 11. 15.
[React, Material UI] Warning: MaxListenersExceededWarning 발생 조건 Material UI에서 Grid 컴포넌트를 사용해 리스트 구현 리스트 테이블의 컬럼 수가 10개 이상일 때 발생 원인 Event listener는 10개가 default 컬럼을 resizing해주는 이벤트리스너(colResizer)가 컬럼수만큼 생성된다. colResizing 이벤트를 막을 수 있는 XGrid컴포넌트를 사용해도 되지만, 상업적 사용시 유료이다. 따라서 컬럼이 10개 이상이 되면 워닝이 발생함. 해결 방법 아래 코드 추가 require('events').EventEmitter.prototype._maxListeners = {컬럼 수}; 나는 12를 넣었다. 참고로 0을 넣으면 무제한이 되는데 권장하지 않는다. 2020. 11. 15.
[React + Material UI Modal] Warning: Failed prop type: Invalid prop children ... 해결하기 Warning: Failed prop type: Invalid prop children ... 발생조건 React + Material UI 환경에서 Modal 사용시 발생원인 Material UI의 Modal은 ref와 함께 자식 컴포넌트로 전달되어야 한다. 더 찾아보면 함수형 컴포넌트에서는 사용할 수 없거나 복잡한 방법을 사용해야 한다는 내용들이 나오는데, 클래스 컴포넌트는 권장사항이 아니기도 하지만, Mobx나 useStyle등을 사용하는 방법도 달라서 찝찝하고 복잡해질 수 있다. 결국 수정할수록 더 많은 에러를 뿜는바람에 클래스 컴포넌트를 사용하는 방법으로는 해결하는것은 포기했다.. 해결방법 // 모달을 사용할 함수형 컴포넌트 return( { setOpen(false); }} aria-labell.. 2020. 11. 15.