목록전체 글 (40)
마로의 개발일지
22년 3월 아무 문제 없이 잘 돌아가던 Vertical-api에 장애가 발생했다. 새로운 버티컬 페이지가 배포된 다음날이었다. 처음엔 테스트도 문제없이 잘 돌아가고 로직을 수정한 게 아니라 단순히 페이지만 추가했을 뿐인데 에러가 나는 게 이상했다. 상대적으로 이전과 차이 나는 건 트래픽이 좀 더 늘었다는 것이었고, 들어갈 때마다 발생하는 게 아니라 간헐적으로 발생했기에 AWS Lambda 자체의 오류라고 생각했다. 지금 생각하면 정말 멍청한 생각이었다. 겨우 그 정도 트래픽이 늘어난 것 때문에 장애가 발생할 서비스가 아닌데 말이다. 당시 상황 하필 장애가 났을 땐 팀장님이 휴가를 간 상태였고 오랫동안 기다리던 휴가였기 때문에 방해하고 싶지 않았다. 팀장님을 제외한 다른 팀원분들은 serverless f..

관심 카테고리 앱 메인 화면에 관심 카테고리에 따른 관심 상품 목록이 추가되었다. 따라서 관심 카테고리를 등록 및 수정 할 수 있는 기능을 만들게 되었는데 해당 기능은 단순 CRUD였기에 구현에 별다른 어려움은 없었다. 하지만 지금 생각해보면 DB 설계에 살짝의 아쉬움이 남는다. 자세한 내용은 하단에서 설명하겠다. 테이블 설계 아래의 ERD는 실제 운영 DB의 ERD가 아닌 이해를 돕기 위해 임의로 작성한 테이블이다. column의 이름이 이상하거나, 없거나 실제 테이블의 데이터 형식과 차이가 있다. ERD 작성은 quickDBD를 이용했다.(https://app.quickdatabasediagrams.com/) user와 category 테이블은 예상할 수 있듯이 사용자와 기존의 카테고리 정보들을 저장..

퀵메뉴 개편 기존의 퀵메뉴는 하드코딩된 값들과 사용자별로 인기 카테고리들을 내려주고 있었다. 해당 항목을 수정하고, 유동적으로 내려주기 위해선 일단 먼저 DB 테이블에 저장하고 불러오는 기능이 필요했다. 이전엔 퀵메뉴 테이블이 존재하지 않았기에 테이블 설계부터 진행했다. 테이블 설계 아래의 ERD는 실제 운영 DB의 ERD가 아닌 이해를 돕기 위해 임의로 작성한 테이블이다. column의 이름이 이상하거나, 없거나 실제 테이블의 데이터 형식과 차이가 있다. ERD 작성은 quickDBD를 이용했다.(https://app.quickdatabasediagrams.com/) menu 퀵메뉴 정보를 저장하기 위한 테이블이다. menu_seq 기본키로 사용할 값이다. order 퀵메뉴에 나타낼 순서를 뜻한다. n..
2022년이 되어 맡은 첫 프로젝트였다. 이전까지는 운영 건들을 해결하거나 간단한 작업만 했었는데 꽤 사이즈가 큰 업무가 처음으로 할당되었다. 당시 생각에는 '재밌을 거 같지만 겨우 7개월 차 신입이 하기에는 부담스러운 거 같은데?'라고 생각했었다. 개발이 아닌 개편인데 뭘 그렇게 생각하냐고 할 수도 있다. 하지만 메인페이지 호출 api를 새로 만들게 되면서 기존에 호출하던 api들도 새로운 api로 바뀌었고, 새로운 기능들이 추가되었다. 거기에 이전에 있던 로직들이 필요한 기능인지 아닌지를 판단해서 제거해야 했기 때문에 작업량이 꽤 많았다. 개발 내용 작업했던 내용을 모두 적을 순 없겠지만 대략적으로 적어보자면 메인 배너 추가, 기존의 호출 api들 교체 및 스펙 변경, 불필요한 로직 제거, 이전까지 ..
당시엔 시간도 없고 정신도 없어서 못썼지만 지금에서라도 21년 회고를 작성하고자 한다. 3월에 쓰는 회고는 뭔가 많이 어색하지만 까먹기 전에 미리 써놓는 게 좋을 것 같아 지금이라도 쓰기로 했다. 첫 직장 첫 회사에 입사를 했다. 개인적으로는 많이 부족하다고 생각했는데 운이 좋았던 것 같다. 코딩 테스트날 컨디션도 좋았고 운도 좋아서 문제를 모두 맞혔다. 면접 때도 좋은 동기와 함께 면접을 봐서 편하게 볼 수 있었다. 언제나 하고 있던 생각이 '붙여만 주면 진짜 일 잘할 수 있는데...'였고 붙여줬기에 정말 열심히 일했다. 열심히 말고 잘하기 위해 늦게까지 남아 야근하며 부족한 공부를 했고 당시엔 야근의 아이콘이 되어 있었다. 저녁 먹고 돌아와서 공부한 뒤 퇴근하면 평균 퇴근시간이 9시쯤이었던 것 같다...
2021년에 비전공자로 SSAFY를 수료하고 내가 가진 지식은 아주 하찮기 그지없었다. 복수전공인 전자전기 공학에서 컴퓨터 구조와 운영체제 입문을 들었지만 기억조차 나지 않았고, 졸업 전에 잠시 끄적였던 딥러닝 지식은 너무 보잘것없어 꺼내보기도 민망했다. SSAFY에서 배운 Django, Vue.js는 기초적인 프로젝트 수행에 필요한 정도만 알고 있었고, 그나마 딥러닝과 코테를 준비하면서 공부한 Python 문법만이 그나마 좀 더 나은 상황이었다. 입사할 당시엔 백엔드 개발자로 풀스택 개발 업무를 하는 팀에 들어갔었다. Node.js와 React를 사용해서 웹 개발을 하는 팀이었다. 한 달 동안 방치되며 사용하는 기술 스택들에 대한 부족한 지식들을 채우기 위해 노력했지만 역시나 역부족이였고, 대략적인 느..
개발을 시작 한 이후 만족스러운 기록을 남긴 게 없는 거 같다는 생각이 들었다. 항상 처음엔 늘 그렇듯이 열심히 정리하고 기록하지만 나중엔 시간이 없고 바빠서 용두사미가 되어버린다. 대학교시절 딥러닝을 찍먹하며 열심히 배울 때에도 공책에 열심히 글로 적었던 기록들은 행방이 묘연하고, 당시 진행했던 과제들이나 C++로 코딩테스트를 준비하던 자료들도 어디로 갔는지 모르겠다. 학교 수업은 진도가 있고 범위가 있지만 개발은 범위가 끝도 없고 정해진 분량도 없기에 최대한 많은 내용을 알기 위해 노력했었다. 공부한 내용을 복습할 땐 해당 내용을 한 번 더 찾아보고, 강의를 다시 듣고 이해한 다음 넘어가는 게 전부였다. 공부한 내용을 정리하고 기록하는 건 시간낭비라고 생각했고, 그 시간에 다른 내용을 본다면 더 많은..
어느덧 백엔드 개발자로 일한 지 1년 9개월째이다. 그동안 많다면 많고 적다면 적은 여러 경험들을 하며 일하고 있다. "왜 이제 와서 블로그를 쓰는가?"에 대한 대답은 아마 예상했듯이 "이직 준비를 위해서"가 주 목적인 것은 맞다. 하지만 글을 쓰기 전 다시 한번 "왜 이제 와서 블로그를 쓰는가"에 대해서 생각해 보았다. 완벽주의 나는 심한 완벽주의는 아니지만 어느 정도 완벽주의자이다(주관적인 생각). 나에 대한 기준이 높고 쉽게 만족하지 않으며 좀 더 좋은 결과를 내기 위해 노력한다. 이것은 장점일 수도 있지만 완벽하지 않다고 생각이 든다면 실행을 하지 않는다는 문제가 있다. 블로그도 마찬가지였다. 나는 귀찮음이 많은 사람이라 블로그를 꾸준히 할 수 없을 것 같다는 생각에 시작조차 하지 않고 있었다. ..