채용공고 올리기

강인수님을 응원해보세요!

지금 만족하고 있어요
성실함
유연함
학습 지향
전략적
자기 주도적

미리보기

기본 정보

이름
강인수
직업
SW 개발자
간단 소개

안녕하세요! 궁금한 것을 보면 참지 못하는 개발자 강인수 입니다.

자기소개

자기소개

😊 대규모 트래픽 처리에 관심이 많은 신입 JAVA / Spring Boot 기반의 백엔드 개발자 강인수입니다. 학습한 내용을 실제 프로젝트에 적용해보는 것을 좋아하며 특히 IT 기업의 테크 블로그나 테크톡에 소개된 새로운 방법을 기존 프로젝트에 적용해보려고 노력해왔습니다.

오픈 소스 프로젝트에 관심이 많아 오픈 소스프로젝트에도 기여하고 있으며 Gradle 개발자에게 Shout out을 받기도 했습니다.


자랑하고 싶은 부분은 Bold로 표시했습니다.

교육

소속/기관명

경북대학교

종류 | 전공

대학교(학사) | 컴퓨터학부

재학 기간 | 재학 상태

2018.03. ~ 2024.02. | 졸업

소속/기관명

창녕옥야고등학교

종류 | 전공

고등학교 | 인문계

재학 기간 | 재학 상태

2014.03. ~ 2017.02. | 졸업

기술 스택

기술 스택

Java, Kotlin, kotlinx.coroutines, Spring Boot, spring-jpa, MySQL, MongoDB, Redis, Git

프로젝트

프로젝트명

Signal

소속/기관명

SSAFY

프로젝트 기간

2024.10. ~ 진행 중

프로젝트 내용

질문을 주고 받으며 일대일 채팅과 위치 기반 유저 매칭을 기능을 제공하는 커뮤니티 앱입니다.

기능만 동작하게 개발되어 있는 것에 아쉬움을 느껴 프로젝트가 끝난 이후에 개인적으로 시간을 내서 게시글 조회 및 유저 매칭 부분을 아래와 같이 개선했습니다.

팀원 : 안드로이드(3명) + 백엔드(3명)

What I did

  • 기존에는 인기글 조회 API 호출할 때 마다 모든 게시물의 좋아요 수를 기준으로 정렬하여 상위 게시물을 반환 했지만, 이전에 계산한 인기글을 Redis에 캐싱하여 중복 계산을 없애 120배 성능 향상을 얻었습니다.(643ms -> 5ms)

  • 사용자 매칭 시 모든 사용자의 위도와 경도를 가져와 거리를 계산하던 것을 위도와 경도 데이터를 지오 해시로 변환하여 저장하고 거리 계산에 사용하여 25배 성능 향상을 얻었습니다.(250ms -> 10ms)

  • 채팅메시지 해시 샤딩을 사용하여 분산 저장하였습니다.

  • 게시글의 좋아요 수를 계산하기 위해 게시글-유저 관계테이블을 사용했던 것을 게시글 테이블에 좋아요 수를 담는 컬럼을 추가하여(반정규화) 게시글 좋아요 수 조회 속도를 높였으며 스프링의 스케줄링 어노테이션을 사용하여 게시글 좋아요 수를 갱신하였습니다.


Tech Stack

  • Backend - Spring Boot(3.x+), Java(17+), JPA, MySQL, redis, websocket, , MongoDB

  • Infra - Nginx, Docker, Jenkins

프로젝트명

Music Auto Tagging

소속/기관명

소프트웨어 마에스트로, 네이버 바이브 뮤직

프로젝트 기간

2022.06. ~ 2022.11.

프로젝트 내용

사용자 취향에 맞는 노래를 추천해 주기 위해서는 노래 관련 태그를 생성하는 것이 필요하지만 사람이 직접 태그를 만든다면 사람마다 기준이 달라 태그 노래 태그의 일관성이 떨어지는 문제점이 발생하였고 이를 AI 모델을 사용하여 해결했습니다.

네이버 바이브 뮤직에서 실제 개발하고 있는 AI/ML 프로젝트에 참여하게 되었습니다. 네이버 1784 본사에서 발표도 진행했습니다.

팀원 : ML(1명) + 백엔드(2명)

Github : https://github.com/kin4496/music-tag-predict

App 시연 영상 : https://www.youtube.com/watch?v=V7AepBTX7IU

What I did

  • 노래 가사를 BERT가 이해할 수 있도록 BPE 방식으로 임베딩

  • 가사 분석 시 LSTM 대신에 문장 간의 연관성을 잘 파악하는 BERT를 사용

  • 노래 음원을 가청 주파수 대역을 잘 표현한 멜-스펙토그램으로 분석

  • 가사 특징 벡터와 음원 특징 벡터를 바탕으로 노래와 가사를 동시에 고려하는 모델 개발


Tech Stack

  • ML - Python, Pytorch, BERT, Sentencepiece

프로젝트명

Study Coordinator

소속/기관명

경북대학교

프로젝트 기간

2023.07. ~ 2023.08.

프로젝트 내용

챗 지피티 API를 활용하여 영어 학습 자료를 자동으로 만들어주는 앱으로 안드로이드 개발을 담당하였습니다.

Android Compose를 도입해보았고 구글 안드로이드 아키텍처에 맞게 모듈을 구성하여 유지보수성을 높이려고 노력했습니다.

팀원 : 안드로이드(1명) + 백엔드(2명)

What I did

  • 네트워크 통신시에 코루틴을 사용하여 가독성 개선과 API 호출 시간 감소

  • MVVM + 멀티 모듈 구조 적용

  • 코드간의 결합성을 낮추기 위해 의존성 주입 Hilt를 사용


Tech Stack

  • Android - Android, Kotlin(1.8+), Coroutine, Android Compose, Retrofit2, Dagger Hilt

프로젝트명

Airpods

소속/기관명

개인

프로젝트 기간

2020.01. ~ 2020.02.

프로젝트 내용

안드로이드에서 에어팟의 배터리를 측정하는 앱으로 혼자개발하여 구글 플레이스토어에 출시했습니다.

안드로이드 기본 컴포넌트를 이해하고 수명주기에 관해서 배울 수 있었던 프로젝트입니다.

팀원 : 개인(안드로이드 개발)

What I did

  • BLE 스캐너를 작동하여 에어팟의 배터리 신호를 감지했습니다.

  • 브로드캐스트를 사용하여 블루투스 연결 시에만 BLE 스캐너 작동시켜 배터리 효율성을 높였습니다.

  • 서비스를 이용하여 백그라운드에서도 원할하게 동작하도록 구현했습니다.


Tech Stack

  • Android - Java, Android

대외활동

활동명

Kotest

소속/기관명

개인

연도

내용

Kotest는 코틀린을 위한 테스트 프레임워크로 오픈 소스 프로젝트입니다.

이슈 탭을 주기적으로 확인하며 관심 있는 이슈에 대해 PR을 작성하여 프로젝트에 기여하였습니다. 특히 코드 작성 후 이를 테스트할 수 있는 테스트 코드를 작성하는 Contribution 규칙에 맞춰 PR을 작성했습니다.


작성한 PR 리스트

  1. 에러를 담는 stacktrace가 길어지게 되면 OOM이 발생할 확률이 높아지고 첫번째 에러는 중요하지 않는 경우가 많으므로 첫번째로 발생한 에러를 표시하지 않는 옵션을 추가하였습니다(https://github.com/kotest/kotest/pull/3904)

  2. Kotest에서는 Retry 블록을 통해 특정 횟수만큼 테스트를 반복할 수 있는 기능을 제공하고 있습니다. 또한 특정 예외는 무시할 수 있는 옵션을 제공하고 있습니다. 그런데 설정한 예외의 자식 클래스 예외가 발생하면 이를 무시하지 않고 테스트 실패가 되는 버그가 있어 이를 수정하였습니다. Gradle 개발자에게 shout out을 받기도 했습니다.(https://github.com/kotest/kotest/pull/3955)

활동명

2023 오픈 소스 컨트리뷰션 아카데미 지역 스프린트(Backend.ai)

소속/기관명

2023 오픈 소스 컨트리뷰션 아카데미

연도

내용

'2023 오픈소스 컨트리뷰션 아카데미 지역 스프린트'는 오픈 소스 메인테이너와 협력하여 오픈소스 프로젝트의 컨트리뷰터로써 첫걸음을 도전 할 수 있는 1박 2일 프로그램입니다.


Backend.ai 프로젝트는 AI 개발에 필요한 환경 설정을 자동으로 처리해, 개발자가 오직 AI 개발에만 집중할 수 있게 돕는 오픈소스 프로젝트입니다. Backend.ai 메인테이너 분과 오프라인으로 협업하여 PR 작성했습니다.

버튼 클릭을 한 이후에 하이라이트 사라지지 않는 버그를 수정하여 PR을 작성해 기여하였습니다.

포트폴리오

URL

link

Github

깃허브
link

노션 이력서

노션

자격증

자격증명

Opic(영어)

점수 | 발급기관

IM3 | ACTFL

취득연월

2024.06.

자격증명

정보처리기사

점수 | 발급기관

등급 없음 | 한국산업인력공단

취득연월

2024.09.

자격증명

Topcit

점수 | 발급기관

3 | 과학기술정보통신부

취득연월

2023.10.

자격증명

SQLD

점수 | 발급기관

등급 없음 | 한국데이터산업진흥원

취득연월

2023.10.

댓글