전체 글 (24) 썸네일형 리스트형 삿포로 여행 대학 친구들 넷이 있는 단톡방에서 수년 째 하는 말이 있다. '동남아 언제 갈건데?' 학생/취준생일 때는 누가 말을 꺼내고 금새 허공에 사라지곤 했다. 이번에도 누군가 얘기를 꺼냈는데 호응이 달랐다. 다들 여유도 생기고 추운 겨울이라 동남아 가기 적기였다. 비행기가 싸지는 않아 어디로 갈까 며칠 동안 알아보기만 하다 월요일 저녁, 갑자기 호준이가 삿포로 얘기를 꺼냈다. 청주 출발 무려 특가 19만원!세계 3대 축제인 삿포로 눈축제를 단돈 19만원에? 다들 홀린 듯이 한두 시간 만에 결제를 해버렸다. 숙소가 인당 1박에 10만원 씩 하는 엄청난 가격에 꽤나 당황했지만 이때 아니면 못간다는 생각으로 묻지도 따지지도 않고 예약을 해버렸다.별 고민 없이 예매한 비행기 시간은 금요일 출발 월요일 도착이었다. 숙소.. 첫 풀스택 서비스 만들기 (Feat. 엉망잔칭) 프론트엔드 개발자였던 과거를 뒤로 하고...(과거 아님) 이번에 회사에서 필요하다는 서비스를 풀스택으로 만들어보기로 했다. 3월 쯤 본격적으로 들어가는 메인 프로젝트에 투입되기 전까지 시간이 남아 백엔드도 경험해 볼 겸 맡아보기로 한 것이다. 예전에 싸피 할 때도 백엔드 공부를 하긴 했었고 백엔드 개발자들과 협업도 당연히 했었던지라 어렴풋이 어떻게 설계를 하고, 개발을 하는지 알고는 있었는데 막상 직접 개발해보는건 처음이었다. 스케줄은 타이트하게 정해졌다. 우선 한달 동안 MVP(최소 기능 제품)를 빠르게 개발해내고, 남은 한달 동안 피드백을 받으며 수정해나가기로 했다. 우리 파트원들끼리만 사용해보면서 어느 정도 안정화하다가 몇달 후 런칭할 사내 시스템에 붙이는 것이다. 프로젝트 시작! 먼저 요구사항을 .. useScrollAutoMove - 실시간 로그 화면 스크롤 자동 이동 회사 서비스 중에 실시간으로 추가되는 로그를 계속해서 보여줘야 하는 화면이 있었다. 배열에 로그 데이터가 계속해서 추가되며 전체 로그의 height가 길어지면서 당연히 화면에 세로 스크롤이 생겼다. 이런 상황에서 리액트는 스크롤이 상단에 멈춰있는 상태로 스크롤 전체 길이만 길어져갔다. 그런데 이렇게 되니 새로 쌓이는 로그들은 스크롤을 직접 내려 확인해야 하는 불편함이 생겼다. 마우스로 스크롤을 내리지 않는 이상 초반에 생성된 로그만 볼 수 밖에 없었고, 자동으로 가장 최신 스크롤을 계속 볼 수 있게 개발해보기로 했다. export const useScrollAutoMove = (data: any[]) => { const scrollRef = useRef(null); useEffect(() => { .. 2024 회고 상반기에는 KPT를 활용해 회고를 했었다. KPT 회고라는게 보통 업무용으로 쓰여서 그런지 개인적인 회고임에도 비슷하게 쓰게 되는 점이 있었다. 개발자라는 직업과 자기 개발의 측면에 중점을 두고 회고를 하게 된다. 이번 하반기 회고까지는 비슷하게 KPT로 써보려고 한다. 하반기 회고 이후에는 개인적인 경험과 감정을 곁들여 아무렇게 막 쓰는 2024 총 회고 겸 2025 다짐을 해봐야겠다. https://im-not-liar.tistory.com/entry/2024-상반기-회고 2024 상반기 회고올해 상반기가 끝나면서 7월 초에 간단하게 회고를 써보려 했...으나 거의 다 써 놓고 완결 짓기를 미루고 미루다 결국 한달 가까이 지난 이제서야 마무리한다. KPT 템플릿으로 im-not-liar.tist.. 테오 스프린트 18기 회고 테오 스프린트란, 구글의 핵심 서비스들을 탄생시킨 프로세스 '스프린트'를 FE 시니어 엔지니어인 테오만의 방식으로 변형시킨 서비스 개발 프로세스다. 일주일 간 진행하는 일종의 해커톤이라고 할 수 있다. 벌써 18기수의 나름 전통(?) 있는 행사고, 나는 14, 15, 16기 연속 3회를 참여했었다. 작년까지는 거의 1~2달 간격으로 자주 했었는데, 최근에는 테오가 바빠서 그런지 텀이 꽤 있었다. 나는 17기를 건너 뛰고 약 1년만에 재참여를 하게 됐다. 이번에 참여하는 주된 이유는 IT 프로덕트를 만드는데 효과적이라고 생각했던 이 테오 스프린트의 시스템을 체화하기 위해서였다. 추후 내가 하고 싶은 경제성 있는 프로젝트들에도 적용하기 위해서. 그래서 이번에는 배운다는 생각으로 개인적인 개발이나 아이디어의 .. 컴퓨터 옮겨가며 작업 이어가기 Feat. Git 직장 동료와 코드 리뷰를 하다 '~기능 구현 중'이라는 커밋이 눈에 띄었다. 이게 뭐냐고 물어보니 회사에서 작업하다가 집에 가서 이어하기 위해 그때까지의 작업을 저장해 놓은 커밋이라는 답을 들었다. 커밋을 그렇게 해도 되나 싶으면서도 아니면 어떻게 해야 할지 바로 떠오르지는 않았다. 작업의 진행 상황을 임시 저장하는 용도로 커밋을 사용했던 동료의 방법은 간단하고 직관적이지만 다른 사람이 볼 때 의미 없는 커밋을 쌓는다는 단점이 있었다. 당장 나만 해도 코드 리뷰를 하면서 이 커밋은 무슨 역할인지 헷갈렸다. 이 글에서는 찾은 방법에 대해 간략하게 소개해보도록 하겠다.임시 브랜치 활용두괄식으로 바로 소개해보자면, Git으로 임시 브랜치를 만들어 활용하는 방법이다. 이 방법을 사용하면 커밋 내역을 깨끗하게 유.. 에러 핸들링 feat. Error Boundary, react-error-boundary 개발을 하다보면 새하얀 배경에 에러 메세지로 가득한 화면을 심심치 않게 맞닥뜨린다. 실제 서비스 단계에서 이런 상황이 닥친다면 아무 안내도 받지 못한 사용자는 당황하다가 페이지를 이탈할 가능성이 크다. 반대로 예상치 못한 에러가 발생하더라도 재시도나 홈으로 이동 등 유저에게 에러 대처 기능을 제공하면 사용자가 바로 이탈할 가능성은 줄어들 것이다. 즉, 에러를 어떻게 처리하는지는 웹에서 상당히 중요하다.이전 회사에서는 에러 처리 로직이 제대로 되어 있지 않았다. 기능 구현하느라 바빴고, 에러가 발생하면 빠르게 해결해 재배포하는 식이었다. 언제 한 번 제대로 공부해야지 생각만 하고 있다가 이번에 기회가 되어 에러 처리 로직을 개선해보게 되었다. 이 과정에서 얻은 지식을 토대로 FE에서의 에러 처리에 대해 전.. 싸피 후기 - 가장 기억에 남는 순간 3가지 삼성청년SW아카데미(싸피) 13기 모집을 기념해 싸피에서 가장 기억에 남았던 좋았던 순간 3가지를 써본다. 첫 번째, 캠퍼스 산책할 때가 가장 행복했던 것 같다.개발하다가 안풀려서 머리가 너무 아플 때, 밥 먹고 배가 너무 부를 때 밖에 나가면 모든 게 해결됐다. 가을에 단풍이 제대로 든 나무들 사이를 산책할 때면 고된 하루의 피로가 샥 씻겨나가는 기분이었다. 싸피가 끝나 아쉬운 게 많지만 더 이상 대전 캠퍼스를 거닐 수 없다는 점이 가장 아쉽다. 두 번째, 찐하게 프로젝트를 했던 순간들이 생각난다.UCC를 찍으려고 머리에 A4용지도 둘러보고, 24시 카페에서 밤새다가 쪽잠도 자보고, 그러다 배고파져서 야식도 엄청 먹었다. 고생했던 순간들이지만 지금 생각해보면 좋은 사람들과 정말 행복했던 시간이었다. 세.. 이전 1 2 3 다음