채용공고 올리기

조재현님을 응원해보세요!

지금 만족하고 있어요

미리보기

기본 정보

이름
조재현
직업
백엔드 개발자
간단 소개

보다. 쉽게. 소프트웨어의 가치를 생각하며 개발하는 백엔드 개발자, 조재현입니다.

자기소개

자기소개

저는 개발에 있어 ‘생각하는 태도’가 소프트웨어의 품질을 결정짓는 중요한 요소라고 생각합니다. 그런 태도를 기르기 위해 코드 리뷰를 통해 동료들과 토론하고, 개발자 커뮤니티에서 지식을 나누는 활동을 좋아합니다. 이러한 과정에서 문제 해결 능력과 새로운 지식을 얻으며 꾸준히 성장할 수 있었습니다.

특히, 이러한 경험을 바탕으로 ‘쉽게 읽히는’ 코드에 대한 고민을 깊이 하게 되었습니다. 디자인 패턴, 객체지향 원칙, 의존성 관리와 같은 기본 개념 속에서 문제를 정의하고 해결하는 과정을 통해 개발에 대한 시야를 넓혔습니다. 또한, 기술의 동작 원리를 깊이 이해하며 기술을 적용할 때 발생하는 효과나 문제의 원인을 명확히 파악할 수 있게 되었습니다.

이처럼 코드에 명확한 이유와 원칙을 담아 개발하니, 배움과 성장은 단순한 업무를 넘어 문제 해결의 즐거움과 성취감을 느끼게 해주는 취미가 되었습니다 :)

프로젝트

프로젝트명

Bucket-Back

소속/기관명

그렙

프로젝트 기간

2023.10. ~ 2023.12.

프로젝트 내용

가지고 싶은 취미 상품을 관리하고, 구매 결정을 위한 피드백을 받는 커뮤니티 서비스

역할


  • 백엔드 3명, 프론트엔드 2명, 디자인 1명

  • 팀장 & 백엔드 및 인프라 담당

개발 주요 사항


  • 구현 계층 적용

    • 비즈니스 로직을 정의하고, 이를 돋보이게 하기 위해 Service 계층 하위에 구현 계층을 두어 필요에 따라 하위 계층을 의존하도록 설정함

    • Aggregate 간에 무거운 의존 관계를 덜어냄

    • Service 레이어에서 비즈니스 로직 가독성을 향상함

  • Test - Fixture 적용

    • 테스트 코드의 개발 시간을 줄이고 생산성을 향상하기 위해 적용

    • 객체 생성과 같이 부수적인 작업을 Test-Fixture를 적용해 재사용성을 향상함

  • DTO를 VO 단위의 객체로 재변환

    • DTO를 단순히 데이터 전달 목적만을 가지는 것이 아닌, 하나의 정의 가능한 도메인 객체로 다시 재분류하는 역할을 함

    • Controller 레이어에서 DTO의 필드값이 드러나는 문제를 해결해 캡슐화를 지킴

    • Service 레이어에서 객체의 이름만으로도 비즈니스를 파악할 수 있어 코드의 전달력을 향상함

  • 멀티 모듈 적용

    • 계층별, 기술별로 문제 범위를 특정하기 위해 Infra, Domain, API, Common 모듈로 분류함

    • 문제를 통제하고 빠르게 발생 지점을 파악할 수 있도록 개선함

  • SSE를 활용한 알림 기능 구현

    • 이벤트 리스너, 스케줄러, HeartBeat 를 활용해 휘발성 알림 기능을 구현

  • 프로젝트 링크

프로젝트명

LIME (LIfe - TIme)

소속/기관명

팀 프로젝트

프로젝트 기간

2024.01. ~ 2024.04.

프로젝트 내용

역할


  • 백엔드 3명, 프론트엔드 2명, 디자인 1명

  • 팀장 & 백엔드 및 인프라 담당

개발 주요 사항


  • 기존 Bucket - Back 에서 아쉬웠던 내용을 평가하고 보완한 프로젝트

    • 기획 보완 -> 사용성을 높이기 위한 기능 10가지 재설계

    • 개발 보완 -> 코드의 유연성, 고급 기술 적용 등 개발 퀄리티 보완

  • 엔티티와 도메인 객체 분리

    • DB와 비즈니스 로직의 관심사를 독립적으로 분리하여 기술의 의존도를 최소화함

    • 어댑터 디자인 패턴을 사용해 코드를 개선

  • 연관관계 분리

    • 비즈니스 적으로 생명주기가 일치하지 않는 엔티티 관계를 파악하고, JPA 연관관계를 제거해 객체 간 결합도를 낮춤

  • 옵저버 디자인 패턴 적용

    • SSE 알림 기능을 옵저버 디자인 패턴을 적용해 관심사와 행위를 목적에 맞게 독립적으로 구성함

  • 멀티서버, Blue-Green 배포 방식 적용

    • 무중단 서비스를 위해 서버를 추가 도입 및 아키텍처 재설계

    • 서버를 체크하면서 배포된 내용이 정상이면 배포 버전으로 전환하고, 그렇지 않으면 이전 버전을 그대로 사용하도록 서비스 안정화

  • 학습테스트 [링크1] [링크2]

    • Service 레이어에서 @Transactional 적용 여부에 대한 토론 후 기술 적용 기준을 마련하기 위해 학습한 내용 정리

    • 양방향 연관관계에 대한 테스트 후 기술 사용에 대한 부작용을 검토한 내용 정리

  • 프로젝트 링크

포트폴리오

첨부파일

첨부파일명

LIME 아키텍처.pdf

첨부파일명

Bucket-Back.pdf

대외활동

활동명

프로그래머스 백엔드 데브코스 4기

소속/기관명

그렙

연도

내용
  • Java심화, DB, SpringBoot, JPA, Cloud 등 백엔드 및 개발 기술 스택 학습

  • 주차별 과제 수행, 2회의 팀 프로젝트 진행

  • 동료와의 소통, 멘토링 등 자유로운 소통으로 개발 가치관 함양

  • 알고리즘, CS 등 스터디 활동 참여

활동명

UMC - 1기

소속/기관명

연합동아리

연도

내용
  • Java 및 백엔드 개발 기초 학습

  • 학교별 CS 스터디 활동 경험

  • 수익형 애플리케이션 개발 - 멈뭄

    • 유저 정보 관련 RESTful API 개발

교육

소속/기관명

숭실대학교

종류 | 전공

대학교(학사) | 산업정보시스템공학과

재학 기간 | 재학 상태

2017.03. ~ 2024.02. | 졸업

소속/기관명

운정고등학교

종류 | 전공

고등학교 | 인문계

재학 기간 | 재학 상태

2013.03. ~ 2016.02. | 졸업

기술 스택

기술 스택

MySQL, Git, Java, AWS, Spring Framework, Spring Boot, Docker, JPA, JIRA, Notion, Github

자격증

자격증명

AWS Certified Developer Associate

점수 | 발급기관

Associate | AWS

취득연월

2022.08.

자격증명

AWS Cloud Practitioner

점수 | 발급기관

Practitioner | AWS

취득연월

2022.02.

외국어

외국어명

영어

점수

비즈니스 회화 가능

댓글