채용공고 올리기

조해성님을 응원해보세요!

지금 만족하고 있어요
성실함
책임감
목표 지향적
학습 지향
효율적

미리보기

기본 정보

이름
조해성
직업
백엔드 개발자
간단 소개

안녕하세요! 1년차 개발자 조해성입니다. 주도적으로 문제를 찾고 해결하려고 노력합니다. 꾸준함의 중요성을 누구보다도 잘 알기에, 1일 1커밋 운동과 기술 블로그 운영을 통해 매일 성장하고 있습니다. Clean Code 와 Test에 관심이 많으며 실천하려고 노력합니다.

기술 스택

기술 스택

Java, Kotlin, Spring Boot, Spring Security, spring-jpa, querydsl, junit5, Mockito, Git, MySQL, Redis, Docker, aws-ec2, aws-rds

경력

회사명

비즈플러스글로벌

직급 | 부서 | 근무 유형

연구원 | 연구팀

근무 기간

2023.12. ~ 2024.05. (6개월)

담당 업무

스마트공장 MES 시스템을 개발 및 유지보수.

Java-Servlet 과JPA, MySQL 사용.

60초 걸리는 쿼리를 튜닝 하여 0.3초 만에 답이 나오도록 개선한 경험

https://zircon-neptune-a7d.notion.site/SOM-1-feat-e48f6fcc278e49a1b206121a29ff86fd?pvs=4

프로젝트

프로젝트명

콘서트 예매 대기열 서비스

소속/기관명

항해 플러스 백엔드 5기

프로젝트 기간

2024.06. ~ 2024.08.

프로젝트 내용

대용량 트래픽을 견디는 콘서트 예매 대기열 서비스

kotlin, Spring, JPA, Redis, docker, querydsl, junit5, Mockito 사용

동시성 문제를 해결하기 위해 낙관적 락 및 비관적 락 활용

도메인 로직을 보호하기 위한 클린 아키텍쳐 적용

단위 테스트, 통합 테스트, 레디스 테스트까지 100% 테스트 커버리지 달성
https://github.com/Griotold/concert-ticketing

프로젝트명

library-search

소속/기관명

개인

프로젝트 기간

2024.09. ~ 2024.09.

프로젝트 내용

네이버 API 와 카카오 API를 활용한 도서 검색 서비스 프로젝트

멀티 모듈, Spock 테스트 프레임워크 활용

고가용성을 고려한 circuit breaker 적용

이벤트 핸들러를 활용하여 객체간 결합도 디커플링 및 성능 개선

확장에 용이한 CQRS 패턴 도입
https://github.com/Griotold/library-search

프로젝트명

bankshop-griotold

소속/기관명

개인

프로젝트 기간

2023.08. ~ 2023.08.

프로젝트 내용

은행 거래 및 쇼핑몰 서비스 REST API
Github : https://github.com/Griotold/bankshop-griotold
기술 스택 : Java / Spring Boot / JPA / QueryDSL / MySQL / AWS

  • Swagger 를 사용하여 REST API 문서 자동화
  • Spring Security 를 활용한 JWT 방식 인증, 인가
  • @ExceptionHandler & @RestControllerAdvice를 활용한 공통 예외 처리
  • Spring AOP를 활용한 유효성 검사
  • Spring Data Jpa & queryDSL 를 활용한 동적 쿼리 및 페이징
  • Junit 을 활용한 테스트 자동화 58% 테스트 커버리지
  • AWS를 활용한 도메인 연동 및 HTTPS 배포

포트폴리오

URL

link

기술 블로그

티스토리
link

깃허브

깃허브

교육

소속/기관명

휴먼교육센터

종류 | 전공

사설 교육 | AI데이터플랫폼을 활용한 빅데이터 분석전문가 과정(K-Digital Training)

재학 기간 | 재학 상태

2022.03. ~ 2022.08. | 졸업

소속/기관명

성공회대

종류 | 전공

대학교(학사) | 신문방송학과

재학 기간 | 재학 상태

2014.03. ~ 2021.08. | 졸업

대외활동

활동명

항해 플러스 백엔드 5기

소속/기관명

항해99

연도

내용

TDD, 클린 아키텍쳐 서버 구축

대용량 트래픽 처리

장애 대응 학습

활동명

인프런 워밍업 클럽 백엔드 2기 - 읽기 쉬운 코드, Practical Testing 가이드

소속/기관명

인프런

연도

내용

클린 코드

통합 테스트, 단위 테스트, Mockito 를 활용한 Mocking 테스트

활동명

프로그래머스 SQL/DB 기초 교육

소속/기관명

프로그래머스

연도

내용

프로그래머스가 주관하는 국비 지원 SQL/DB 기초 교육입니다. 2023년 10월 11일부터 총 6주 동안의 MySQL, 데이터베이스 개념을 학습했습니다. 백엔드 개발자는 데이터베이스를 정확히 이해해야 우수한 프로그램을 개발할 수 있다고 생각합니다. 현재의 지식 수준에 안주하지 않고 지속적으로 업그레이드하고자 노력하고 있으며, 이 과정에서 배우는 내용을 백엔드 개발자로의 경력에 적용하고자 합니다. 해당 교육을 통해 얻은 지식으로 뛰어난 데이터베이스 스킬을 보유한 백엔드 개발자로 성장할 것을 약속드립니다.

자격증

자격증명

TOEIC

점수 | 발급기관

810 | 한국TOEIC위원회

취득연월

2023.12.

자격증명

컴퓨터활용1급

점수 | 발급기관

1급 | 대한상공회의소

취득연월

2021.12.

자격증명

전산회계2급

점수 | 발급기관

2급 | 한국세무사협회

취득연월

2022.03.

외국어

외국어명

영어

점수

비즈니스 회화 가능

자기소개

자기소개

[Spring Framework & REST API]
저는 Spring Framework를 이용하여 REST API 를 설계하고 구현할 수 있는 역량을 갖춘 개발자입니다. HTTP 메서드를 활용하여 클라이언트와 서버 간 효율적인 데이터 통신을 지원할 수 있는 능력을 갖추고 있습니다. Spring core, Spring Data JPA, Spring MVC, Spring Security 등 스프링의 다양한 모듈과 라이브러리를 활용하여 API 엔드포인트를 설계하고, 데이터베이스와의 통합을 통해 데이터를 관리하며, 보안과 예외 처리를 고려한 안정적인 API를 제작할 수 있습니다. Swagger 와 같은 도구를 활용하여 API 문서화를 효과적으로 수행할 수 있습니다. 최신 개발 트렌드와 권장 사항을 준수하며 고객과 사용자 요구를 충족시키기 위해 노력하는 개발자임을 자부합니다.

[Java와 Srping에 대한 깊은 이해]
저는 JavaSpring Framework 에 대한 깊은 이해를 바탕으로 안정적이고 확장 가능한 소프트웨어 개발을 지향합니다. 제가 가장 좋아하는 프로그래밍 언어는 Java 로, Spring Framework 는 이를 보완하는 필수적인 툴입니다. Spring 은 좋은 Java 프로그래밍을 할 수 있도록 도와주는 도구입니다. 좋은 Java 프로그램이란 객체 지향 원칙을 준수하는 프로그램이라고 생각합니다. 객체 지향 프로그래밍 원칙을 준수하는 뛰어난 Java 프로그램을 작성하기 위해 JavaSpring에 대한 깊은 이해를 토대로 안정성과 확장성을 갖춘 소프트웨어를 개발하려고 노력합니다. 더불어, 성능 최적화와 유지보수 가능한 코드 작성에 주력하며, 고객 및 사용자 요구 사항을 충족시키기 위한 솔루션을 제공하려고 노력합니다.

[JPA에 대한 깊은 이해]
저는 Java 표준 ORMJPAJPASpring Framework에서 사용할 수 있도록 해주는 Spring Data Jpa, 복잡한 쿼리와 동적 쿼리를 효율적으로 다룰 수 있게 하는 querydsl을 잘 다룰 수 있습니다. JPA를 학습한 이유는 JPA를 활용했을 때 얻을 수 있는 이점들 때문입니다. JPA를 활용한 프로그램 개발은 데이터베이스와의 상호 작용을 효율적으로 수행할 수 있도록 하며 프로그램의 품질을 높이고, 유지보수가 용이한 코드 작성이 가능해지기 때문에 개발 생산성을 향상시킵니다. 저는 Java 프로그램을 효율적이고 확장 가능하도록 돕는 JPA에 대한 깊은 이해를 바탕으로 효과적인 개발 능력을 보유한 개발자임을 자부합니다.

[데이터베이스에 대한 깊은 이해]
백엔드 개발자로서 필수적인 데이터베이스 역량을 갖추었으며, 이전 프로젝트에 효과적으로 데이터베이스와 통신한 경험을 근거로 직무 수행에 있어 실질적으로 기여할 수 있는 능력을 확보한 개발자임을 자신 있게 강조하고자 합니다. 백엔드 개발자는 데이터베이스를 제대로 알아야 올바른 서버를 구축할 수 있다고 생각합니다. 저는 데이터베이스를 제대로 알기 위해 꾸준히 데이터베이스 강의들을 수강하며 제가 만든 프로그램에 배운 개념들을 적용함으로 데이터베이스 개념들을 체화시키고 있습니다. 복잡한 쿼리 작성, 데이터 모델링, 트랜잭션, 인덱스, 서버 프로그램과 데이터베이스 연동 등 다양한 측면에서 스스로 도전하고 학습했습니다. 이 경험을 통해 데이터베이스의 핵심 원리를 파악하고, 안정적인 시스템을 구축하는데 필요한 역량을 향상시키는 것에 주력했습니다.

[테스트 코드 작성을 통한 자동화]
저는 반복적인 작업을 어떻게 하면 자동화할 수 있을지 항상 고민하는 개발자입니다. 프로그램 개발 도중 제대로 동작하는지 수작업으로 테스트하던 것을 Junit 을 활용한 테스트 코드 작성을 통해 개발 프로세스를 향상 시킨 경험이 있습니다. 이로써, 전체 라인 기준 테스트 커버리지 58% 에 달성하였습니다. 단위 테스트, 통합 테스트를 통해 프로젝트의 품질을 높이고 개발 생산성을 향상시켰습니다. 이런 경험을 통해 안정적이고 신뢰성 높은 소프트웨어를 제공하며, 고객과 사용자 요구를 충족시키기 위해 최선을 다하고자 합니다.

댓글