백엔드 개발자로 매일매일 성장하기 위해 오늘도 열심히 공부중입니다!
- 안녕하세요! 신입 백엔드 개발자 강민주입니다.
- 로봇, 메이킹에 대한 관심을 시작으로 프로그래밍에 입문하여 지금은 개발에 푹 빠져 있습니다.
- 개발 공부를 할 때, 다른 분들의 기술 블로그에서 도움을 얻은만큼 저도 나누는 개발자가 되고 싶어 기술 블로그를 운영하고 있습니다.
- 1일 1코딩테스트 문제 풀이 및 TIL 작성을 생활화하며
꾸준히 공부하는 습관을 형성하고 있습니다. - 요리🫕, 운동🧗♀️, 정원 가꾸기🌱에 관심이 많습니다.
- Email : ajtwltsk@naver.com
- Blog : https://ajtwltsk.tistory.com/
- Java
- Spring Boot, Spring MVC, Spring Data JPA
- JPA, QueryDSL
- S3, CloudFront
- Oracle, MySQL, Redis
- HTML, CSS, JS
- IntelliJ, VSCode, Jupyter Notebook
- Git
- Slack, Discord
- Zep, Zoom
- 최종 프로젝트 - 개발자 커뮤니티 백엔드 개발 프로젝트 CodeChef
- 프로젝트 기간 : 2024.10.22 ~ 2024.11.22 (1개월)
- 첨부파일 업로드, 실시간 채팅 기능 구현 담당
- S3, CloudFront, Redis, WebSocket, Redis Pub/Sub, RabbitMQ
- 5분 기록 보드를 작성하며 기술적 의사 결정 과정, 기능 구현, 트러블 슈팅 등을 꼼꼼히 정리할 수 있었던 프로젝트 였습니다.
- 메세지 브로커를 도입하였지만 각 메세지 브로커의 필요성과 도입 부분에서 시간 관계상 구체적인 성능 테스트를 해보지 못해 아쉬웠던 프로젝트였습니다.
하지만 프로토콜부터 메세지 전송 방식, 메세지 브로커까지 공부해 볼 수 있었던 프로젝트였습니다.
- [NBCAMP | Spring 6기] 주특기 플러스 주차 - Trello 프로젝트 : 내일lo KPT 회고
- 프로젝트 기간 : 2024.10.14(월) ~ 2024.10.18(금) (총 1주일)
- 프로젝트 관리를 위한 협업 툴 개발 프로젝트
- 총 5명 중, 팀장으로 리스트, 알림 기능 구현 담당
- Github 협업 규칙으로 '코드 리뷰 코멘트를 꼭 남기기'를 정하여 협업하는 방법에 대해 많이 생각해 보게되었던 프로젝트
- 코드 리뷰 최소 인원(2명)을 충족해야 merge를 하기로 규칙을 정하였는데 다들 담당 기능 구현이 바빠 팀장으로서 코드 리뷰 + 내 담당 기능 구현을 하며 거의 무조건적으로 코드 리뷰를 해야하는 상황이었습니다.
- 한번에 너무 많은 코드를 커밋하는 경우, 코드 리뷰가 쉽지 않음을 깨달았고 기능을 잘게 쪼개어 자주 커밋할 수 있도록 해야겠다고 생각하였습니다.
- 커밋 메세지를 구체적(구현 중 했던 고민, 코드 작성 이유, 잘 모르는 부분, 의논하고 싶은 부분, 기능 구현 설명)으로 작성해 주면 좋았을 것 같다고 생각하였습니다.
- 팀원들의 코드를 읽으며 배울 수 있었던 프로젝트였습니다.
- Java, MySQL 예약어 충돌, RestfulAPI 설계를 위한 기본 규칙, 유저 인증/인가, 카카오 로그인 기능 구현, Slack 알람 기능 구현 관련 트러블 슈팅
- [내일배움캠프 - 주특기 플러스 주차 개인 과제] 트러블 슈팅
- 프로젝트 기간 : 2024.10.11 ~ 2024.10.14
- N + 1 문제 해결 방법, QueryDSL로 동적 코드 작성 방법의 여러가지 방법을 시도해 본 과제
- Github의 커밋 메세지를 잘 정리해 놓은 덕분에 바쁜 일정 중에도 깔끔하게 회고할 수 있었던 과제
- 아웃소싱 프로젝트
- 프로젝트 기간 : 2024.09.19 ~ 2024.09.25 (1주일)
- Spring Security를 이용한 인증/인가, 소셜 로그인(카카오 로그인) 기능 구현 담당
- JWT토큰을 이용한 유저 인증에서 로그아웃 시, 블랙리스트 토큰으로 저장 및 로그인 시, JWT 토큰 인증 로직 구현
- Scheduler를 통한 만료된 블랙리스트 토큰 삭제 기능 구현
- 주특기 심화 과제 - 테스트 코드 작성하기
- 프로젝트 기간 : 2024.09.06 ~ 2024.09.18(약 2주)
- Clean Code, 유닛 테스트, AOP, 통합 테스트
- 테스트 Coverage
- Class : 69.6%
- Method : 57.6%
- Branch : 53.3%
- Line : 64.1%
- 테스트 코드 작성에 집중하며 통합 테스트까지 해 볼 수 있었던 과제
- 커밋 메세지에 작성한 코드에 대한 설명 및 과제 수행 과정을 잘 정리하였습니다.
- [내일배움캠프 - Spring 숙련주차 팀 프로젝트] 뉴스피드 프로젝트 KPT 회고
- 프로젝트 기간 : 2024.09.02 ~ 2024.09.06
- Spring Security를 이용한 인증/인가 기능 구현 담당
- 기능 구현 과정의 트러블 슈팅이 잘 드러난 회고
- JWT 토큰 로그아웃 처리 과정에서 JWT의 특징이 무상태(Stateless)라고 배웠는데 실제 코드 작성 시, Stateless하지 않아 코드를 어떻게 작성해야하나? 고민하였습니다.
- 리프레시 토큰을 사용하거나 블랙리스트 토큰을 사용하는 방법을 대안으로 찾았습니다.
- 리프레시 토큰을 이용한 로그아웃 처리는 아직 Redis를 사용하지 않았고 학습 시간이 충분하지 않을 것이라 판단하여 블랙리스트 토큰을 저장하는 방법을 사용하여 로그아웃 기능 구현하였습니다.
- 리프레시 토큰을 사용하거나 블랙리스트 토큰을 사용하는 방법을 대안으로 찾았습니다.
- 수강생 관리 프로그램 개발 프로젝트
- 프로젝트 기간 : 2024.08.07 ~ 2024.08.09 (3일)
- 예외 처리, 중복 코드 메서드화, 입출력 관련 메서드 추가, 조회를 위한 변수 및 메서드 추가, 추가 요구 사항) 수강생의 과목별 평균 등급 조회 기능 구현 담당
- 모두 MBTI I인 팀원들로 팀이 구성되어 프로젝트 초반 침묵 속에서 소통이 잘 되지 않았으나 팀원들과 소통하기 위해 노력하고 아이스브레이킹을 많이 하며 점차 소통의 문을 열어갔던 프로젝트
- 5명의 팀원 중, 1명이 개인 사정으로 프로젝트 후반에 참여햐여 3일간 4명이 코드를 작성하기 위해 고군분투했던 프로젝트
- 캠프 초반이었기 때문에 Java에 익숙치 않은 팀원이 있어 어떻게 소외감 없이 프로젝트에 참여할 수 있을 지 고민했던 프로젝트
- 프로젝트에서 문서 작성도 아주 중요하다고 생각하기 때문에 코드를 읽어보고 기능 정리 및 과제 제출을 위한 문서 정리를 해 보는 것을 건의
- 최대한 커밋 메세지를 구체적으로 남기려고 노력하였으나
코드를 이해하지 못해 따로 설명해 달라는 팀원에게 필수 기능 구현에 바빠 친절히 설명해 주지 못해서 서운했다는 이야기를 들었습니다. 아직은 그 때 그 상황이라면 똑같이 행동할 것 같지만 개발자로 일하며 여러 상황을 겪으며 이런 상황에 노련하게 대처하는 방법을 배우고 싶습니다.
- [NBCamp | 미니 프로젝트] 팀 소개 페이지 만들기
- 프로젝트 기간 : 2024.07.15 ~ 2024.07.19
- Firbase 데이터 저장 및 연동 담당
- 페이지 로딩 시, 데이터를 가져와 동적으로 페이지를 랜더링 하도록 구현
- JS로 Cheers 버튼 기능 구현
- 버튼 클릭 시, cheers 횟수 증가 및 데이터 베이스 저장, toast 메세지 띄우기
- 재클릭 시, cheers 횟수 감소 및 데이터 베이스 저장, toast 메세지 띄우기(유저 한명 당 한 번만 응원 가능하도록 기능 구현)
자바 미들러
2025.01.13 ~ 2025.02.24
- 1일 1 코딩테스트 문제 풀이 및 TIL 작성 스터디
- 매주 월요일 8 ~ 10시 온라인 스터디
- 자료구조 및 알고리즘 학습
2024.07.15 ~ 2024.11.25
- 내일배움캠프 백엔드 개발자 양성 교육 과정
- Spring Framework 학습 및 프로젝트 기반 커리큘럼
- 팀 프로젝트를 통한 협업 경험
- 하10C(하루 10분 CS 스터디) 참여 : 발표 6회 참여 (유튜브 링크)
- Today I Learned : 119회 작성
- Algorithm Codekata : 124 문제 풀이
- Spring Boot, JPA, QueryDSL, MySQL
자바 비기너
2024.05.20 ~ 2024.06.29
- 40일간 40문제 풀이, 40문제 인증
- 온라인 스터디 24시간 참여
2022.03 ~ 2022.12 (10개월)
- Pre-Training 과정, 인공지능 교육과정, 인공지능 프로젝트 과정으로 구성하여 단계별로 수준 향상을 위해 핵심-실전 기술 및 직무를 학습
- 기초 웹 개발(HTML, CSS, JS), python, 데이터 시각화(Numpy, Pandas), 크롤링, 머신러닝, 사물지능(아두이노, 라즈베리파이, C++)
- [광주인공지능사관학교] AI모델링Track 사물지능 수강 후기
2012.03 ~ 2018.03
데이터모델링에 대한 기본 지식을 바탕으로 SQL 작성, 성능 최적화 등 데이터베이스 개체 설계 및 구현 등에 대한 전문지식 및 실무적 수행 능력을 증명
- 2024.06.21 취득
I'm uploading contents on Tistory (최근 일주일 간 게시글
+ 0)



