앞서 말했던 시니어개발자들과의 충돌이 있었다. 충돌이 있었던 이유는 앞에서 충분히 얘기한 것 같고.. 그래서 두분에게 커피챗을 요청했고 2일정도 뒤에 알겠다고 답변이 왔다. ( 후우... ) 그리고 무슨일인지 물어보시길래..일단 저희 좀 풀어야할게 있는 것 같다.. 서로 이렇게 쭉 갈 수는 없지 않냐 저희 사담도 좀 하면서 어떻게든 친해져보자 라고 얘기를 했더니 띠용?갑자기 두 분이서 미안하다 우리가 먼저 얘기를 했어야했는데 먼저 말하게해서 미안하게 됐다 라고 되려 사과를 하셨다오... 그 때 갑자기 희망의 봉우리가 보였다. 친해져야겠다고 생각한 이유코드 스타일이 너무 달라서 각자 담당한 코드만 개발하게 되었고, 하나의 프로젝트지만 코드의 일관성이 없으며 중복코드가 생겼다. ( 사실 내가 담당한게 너무 ..
사내 컴포넌트 및 ENUM 코드 리팩터링1. 개요기존 각 팀, 그리고 팀내부에서의 각 개인별로 코드를 작성하며서 기술부채를 쌓아왔습니다.이제는 서비스 규모가 커져서 점점 유지보수 하기 어려워진 시점에 각 담당자가 개인의 분야가 아니라면 본인 담당 페이지가 아니라며 수정요구, 기능추가개발 등 책임을 회피하는 모습이 종종 보입니다. 이를 없애기위해 각자 코드 스타일통일, 코드에 대한 이해, 중복코드 제거를 위해 코드리뷰를 도입하려 하였으나 실패하였고 남은 방법으로는 공통화 할 수 있는 코드는 최대한 통일 시켜서 담당자를 없애는 방법을 생각하게 되었습니다. 기존 모노레포를 고려하였으나, 배포 구성까지 전부 바꿔야하는 문제가 있고, 영양사 프로젝트는 별개의 UI를 갖고 있지만 Enum, Text, Util 함수..
아니 쓰다보니까 왜 마찰 얘기가 이렇게 많은거지?근데 사실 마찰이 없는게 더 문제라고 생각한다.뭐랄까.. 특히 요즘 동료들에게 제발 좀 싸워라 라고 얘기를 한다.마냥 싸우는게 안좋다 라고 얘기한다면 그건 좋은걸까?싸움에 대한 생각우리 회사는 수평적 구조다.그럴수록 토론도 많이하고 서로 안맞는 구석이 있으면 말 싸움을 해서라도 끝까지 가서 결국에는 하나로 통일을 해야한다.그렇지 않다면 누군가 나서서 이거해! 이걸로 정해! 가 되지가 않으니 서로 각자의 스타일대로 개발하고 기획하고 디자인한다. 특히 지금은 프론트가 많이 고달픈 상황인데 백엔드 개발자들이 초반에는 토론을 많이 했지만 결국에는 각자 스타일대로 코딩하고 있으며 당연히 키값은 각각 따로 온다.하나하나 프론트가 지적하면 그나마 나랑 친한 사람을 설득..
회사에 입사한 후, 이사님은 직원들의 배려를 최우선으로 두셨다. 자율근무와 당일 연차는 물론, 양재에서 인천까지 통근하는 나를 위해 특별히 시차 출근까지 허락해 주셨다.좋은 동료들, 경영진, 탄탄한 BM과 본사의 자본력까지 모든 것이 순조로웠고, 이직이 성공적인 선택이었다는 확신을 가졌다.하지만 문제는 따로 있었다. 바로 기술 면접 과정이 없었던 점이었다. 의견 충돌에 대한 개인적인 생각사실 기술 면접이 없다고 하더라도 개발 구성원 전체가 같은 동레벨에 같은 뜻을 갖고 있다면 문제는 크지 않다고 생각한다. 구성원들이 true고 false고 키값이 어떻게 오고 이런걸 문제 삼지 않는 프론트엔드 개발자와 백엔드 개발자이며,그게 더 익숙한 개발자끼리 모였다면 어찌되었던 일이 수월하게 잘 수행이 되니까. 예를 ..
처음 입사하고서 벌써 1년 4개월이 지났다.이번 회사에서 꽤 많은 것들을 배운 것 같은데 경험적으로 알고 있으면 현재 상황이 아닌 다른 상황에 빠져들었을 때 배운 경험을 못써먹을 경우가 있을 것 같아서 이미 많이 늦었지만 회사일기를 써보려고 한다. 2022 회고에서 썻던 이직은 암울했지만 다행히 인천에서 식품회사에 이직했다.애초에 나는 집이랑 가까운 회사를 다니지 않고 회사에 가까운 집을 구하는 편이라 어느 지역에서 일을 해도 상관이 없다.심지어 전직장이 강남이라 너무 비쌋는데 인천으로 오니까 세상에 10평 20년 된 빌라 구옥 월세가 65만원이었는데..여기서는 28평 신축 3룸 아파트에서 거주하고 있다. 사실 좀 오바를 했는데 내가 쓰고있는돈을 줄이는것 보다는 버는걸 늘리는 타입이라 사실 유지비를 줄이..
Todos HTML 삽입 미리보기할 수 없는 소스 Fact - NextJS CRUD 구현, API 생성 연결 - 프로젝트 스터디 회의 - 인터뷰 - 유튜브 편집 및 녹음본 프로토타입 업로드용 편집 - 유통업 주문처리 Finding - 유튜브 편집기능..? Feeling 오늘은 딱히 뭔가 한게 없다. 오히려 개발보다 편집이나 녹음을 어떻게 할지에 대한 고민을 많이 한듯. 따로 백엔드 API를 구성해본적은 없는데 뭔가 재미있기도하고 실제로 프론트입장에서 받아오는게 완전 똑같다보니 신기하기도하고 재미있기도한데 과연 서버에서도 이렇게 API구성을 이렇게 하는건가? 인터뷰도하고, 회의도하고, NextJS 프로젝트도하고, 유튜브 완성본도 만들고, 주문처리 등 많은걸 했는데 딱히 새롭게 뭔가를 알지는 못했다. 딱히 ..
Todos HTML 삽입 미리보기할 수 없는 소스 Fact - 프로그래머스 다음에 올 숫자 풀기 및 테스트코드 작성 - 프로젝트 스터디 회의 - 개인 프로젝트 NextJS 로그인 API 생성 및 적용 - 유튜브 프로그램 찾기 - 유튜브 녹음 Finding - NextJS에서 API를 직접 구현 할 수 있다 (충격) - NextJS에서는 일반적으로 서버사이드이기 때문에 웹API인 localstorage api를 사용하지 못한다. Feeling 공부를 많이 하는게 목표였는데 사이드프로젝트, 개인프로젝트, 유튜브 편집 및 녹음 등 하느라 너무 많은 시간을 허비했다. 사실 허비가 아니라 필수적인 시간이긴한데 공부를 많이 못해서 좀 아쉽긴 하다. 그래도 익숙해진다면 금방 공부 할 시간도 많이 생길거라고 생각한다...
Todos HTML 삽입 미리보기할 수 없는 소스 Fact - 프로그래머스 압축 알고리즘 풀기 및 테스트코드 작성 - 일급 함수에 대해 블로그 포스팅 - 프로젝트 스터디 회의 - map, filter, reduce 내장 메서드가 아닌 직접 구현해보기 - 늦은 2022 회고 포스팅 Finding - 일급 함수 - 퍼스널 칸반 - 이터러블 이터레이터 - 평가와 일급 - 함수형 프로그래밍을 하면서 얻는 장단점 Feeling 오늘은 그래도 비교적 많은걸 했다고 생각했는데 생각보다 별로 공부한것도 많이 없네 싶다. 그래도 1년만에 다시 TIL을 시작한만큼 작년에 절실했던 마음으로 다시 공부를 시작해보자 현재 함수형 프로그래밍에 대해서 공부하고 있다. 나름 리액트를 하면서 함수형 프로그래밍을 하고 있다고 생각했는데..
평가 - 코드가 계산되어 값을 만드는 것 일급 - 값으로 다룰 수 있다. - 변수에 담을 수 있다. - 인자로 사용될 수 있다. - 반환값으로 전달할 수 있다. 일급 함수 일급함수란 함수를 일반 값처럼 다룰 수 있는 함수를 말합니다. 함수를 매개변수, 반환값, 변수 등으로 사용할 수 있습니다. 이러한 특징은 함수형 프로래밍에서 중요한 역할을 합니다. - 함수를 변수나 데이터 구조에 저장할 수 있습니다. - 함수를 매개변수로 전달할 수 있습니다. - 함수를 반환값으로 사용할 수 있습니다. const a = 100; const add = (test) => test + 100; const result = add(a); console.log(result) // 200 위 코드가 가능한 이유는 함수를 반환값으로 ..
Fact(한 것) - 이직 - 프로젝트 8개 - 첫 리드로 승진 - 파트장으로 승진 - 연봉점프 - 퇴사 - 프로젝트 배포 Finding(새로 알게 된 것) - Typescript 프로젝트 적용 - 앱내 웹뷰 - 바닐라 자바스크립트 프로젝트 - 유통 및 사업 - React query - NextJS 실무 적용 Feeling (느낀 점) 꾸준히 이직을 준비하고 있던 찰나에 다른 회사에서 먼저 연락이 왔다. 현재 받는 연봉에 무려 2000만원이나 더 높은 연봉을 제시해서 뒤도 안돌아보고 나왔다. 그러나 아직 주니어 개발자고 2년차인데 벌써 회사를 2군데를 다녀서 이력서상에 문제가 생기는게 뻔하긴 했지만 거절하기엔 너무 큰 액수였고 전전직장에서는 워라벨은 좋았으나 실제 프로젝트를 하면서 배울 수 있는건 별로 ..
CSR Client-Side Rendering, SSR (Server-Side Rendering), SSG (Static Site Generation)은 모두 웹 개발에서 사용되는 다양한 렌더링 방법입니다. 각각의 방법은 웹 페이지를 어떻게 구성하고 브라우저에 표시할지에 대한 접근 방식에 차이가 있습니다. CSR (Client-Side Rendering) CSR은 웹 페이지를 동적으로 생성하는 방법으로, 서버로부터 초기 HTML, CSS, JavaScript 파일을 받아와 웹 페이지를 그린 후에, 클라이언트에서 JavaScript를 사용하여 추가적인 데이터를 가져와서 화면을 갱신합니다. 이를 통해, 사용자에게 더욱 빠르게 웹 페이지를 보여줄 수 있습니다. 대표적으로 React, Vue, Angular 등..
정수 숫자와 정수 대상의 배열이 주어지면 두 숫자의 인덱스를 반환하여 대상에 합산합니다. 각 입력에는 솔루션이 하나만 있고 동일한 요소를 두 번 사용할 수 없다고 가정할 수 있습니다. 답변은 어떤 순서로든 반환할 수 있습니다. https://leetcode.com/problems/two-sum/ Two Sum - LeetCode Can you solve this real interview question? Two Sum - Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target. You may assume that each input would ..
리스트 값에 순서가 존재한다는 뜻이다. 간혹, 나도 그렇고 여러 사람이 처음 공부할때 헷갈릴텐데 리스트의 개념 과 리스트(배열) 를 착각 하는 경우가 많다. 알고리즘에서 얘기하는 리스트는 보통 배열이 아닌 리스트(순서가 있는 값의 집합) 이라고 생각하는게 편하다. 자, 그럼 우린 더이상 리스트와 링크드리스트의 차이를 찾아볼게 아니라 배열과 링크드리스트를 알아봐야함을 알 수 있다. 배열 배열은 첫번째 주소값으로 부터 바로 다음에 있는 순서의 주소값에 값들이 순서대로 저장되는것이다. 이미 다른 언어는 다루지않아봐서 잘 모르겠지만 필자의 주언어 인 자바스크립트를 기준으로 const testArray = ["하나", "둘", "셋", "넷", "다섯", "여섯", "일곱"]; 라는 배열이 있다고 가정할때 "넷"..
Todos HTML 삽입 미리보기할 수 없는 소스 Finding - Jest 쿼리함수 - 퍼스널 칸반 Feeling - 요즘 프로젝트 때문에 애자일에 대해 흥미가 생겨서 계속 읽고 있는데 프로젝트 뿐 아니라 삶에 녹여낼 수 있다고 생각해서 일기도 쓰기시작했다. 그러나 딱히 나의 일정관리같은건 따로 하지 않았고 오늘도 TIL을 써야지 하고 복사 붙여넣기 하다보니 NextTodos에 써놨던게 생각이 났다.. 3일동안 TIL을 적지 않아서 전혀 몰랐는데.. TIL은 매일 작성하기 매우 힘들다.. 일기면 모를까.. 그래서 앞으로는 조금 방식을 바꿔보려고 한다. 칸반을 이용해서 실제 내 삶에 일정을 애자일하게 관리하는것..! 할 수 있을지는 잘 모르겠지만 아무튼 안해보고 판단하는것보다는 나으니까 내일부터 개인 칸..