채용공고 올리기

고동민님을 응원해보세요!

지금 만족하고 있어요

미리보기

기본 정보

이름
고동민
직업
BackEnd Developer
간단 소개

안녕하세요! 🙋‍♂️ 기술로 더 나은 세상을 꿈꾸는 백엔드 개발자, 고동민입니다. 🛠 "확장성"과 "유지보수성"을 최우선으로 생각하며 시스템을 설계합니다. 🎯 저의 목표는 기술로 사용자에게 편리함을 제공하고, 팀과 함께 성장하며 더 나은 가치를 만들어가는 것입니다. 😊 늘 새로운 도전을 즐기며, 배우고 성장하는 자세로 앞으로 나아가고 있습니다! ✨ 함께 성장하고 싶다면, 언제든지 연락주세요! 😊

기술 스택

기술 스택

JavaScript, Java, NestJS, Spring Boot, MySQL, spring-jpa, mybatis, PostgreSQL, TypeScript

자기소개

자기소개

📌 기술과 경험
저는 다양한 프로젝트와 업무를 통해 기술적 역량을 키워왔습니다.

  • 한국전자통신연구원(ETRI)에서 연구연수생으로 근무하며, REST API를 설계 및 구현하고, 데이터 파이프라인을 구축한 경험이 있습니다. 이 과정에서 팀의 생산성을 높이고 데이터 처리 효율을 크게 향상시켰습니다.

  • Cloud Canvas 프로젝트에서는 클라우드 리소스 관리 시스템을 개발하며 리소스 참조 및 생성 순서 문제를 해결해 코드의 확장성과 유지보수성을 강화했습니다.

📌 도전과 성장
저는 새로운 기술과 도전을 즐깁니다.

  • 졸업 작품으로 진행한 레시피 추천 앱에서는 Spring Boot와 OAuth2.0을 활용해 백엔드 아키텍처를 설계하며 사용자 친화적인 기능을 구현했습니다. 이 프로젝트는 교수님의 추천을 받아 대회 출품작으로 선정되기도 했습니다.

  • 네이버 부스트캠프를 통해 WAS와 클라우드 인프라의 기본 원리를 학습하고, 이를 실제 프로젝트에 적용해 사용자와 시스템 간의 효율적인 상호작용을 가능하게 했습니다.

📌 저의 목표
기술을 통해 사용자에게 편리함을 제공하고, 팀원들과 함께 성장하며 더 나은 가치를 창출하는 것입니다. 저는 단순히 기능을 구현하는 것을 넘어, 서비스의 본질적인 가치를 고민하며 사용자 경험을 개선하고자 노력합니다.

경력

회사명

한국전자통신연구원(ETRI)

직급 | 부서 | 근무 유형

연구연수생 | 사이버브레인연구실

근무 기간

2023.07. ~ 2023.08. (2개월)

담당 업무

📌 주요 역할 및 상세 업무

  1. REST API 설계 및 구현

  • IoT 데이터 하베스팅 관리 시스템 개발에 참여하여 REST API 설계를 주도적으로 수행.

    • HarvestJob API

      • IoT 데이터 하베스팅 잡 관리: 잡 목록 조회, 상세 정보 조회, 잡 생성/삭제/시작/중지 기능 구현.

      • 요청 검증과 에러 핸들링을 통해 안정적인 데이터 흐름 관리.

    • HarvestSource API

      • IoT 데이터 하베스팅 소스 관리: 소스 목록 조회, 상세 정보 조회, 소스 생성/수정/삭제, 승인 요청 및 응답 기능 구현.

      • MultipartFile과 JSON 파라미터를 처리하는 복합 입력 설계.

  • 데이터 요청 및 응답 최적화를 위해 Spring BootPostgreSQL을 활용한 데이터베이스 연동 및 성능 개선.

  • Swagger를 사용하여 API 명세를 자동화 및 문서화.


🚀 성과 및 결과

  • IoT 데이터 하베스팅 작업에서 데이터 요청 처리 시간 15% 개선.

  • 프로젝트 완성도 100% 달성으로 서비스 운영 환경에 성공적으로 배포.


🌟 느낀 점 및 배운 점

  1. 실용적인 REST API 설계 경험

    • IoT 데이터를 처리하고 관리하는 REST API 설계 및 구현 경험을 통해 실제 서비스에서 요구되는 데이터 흐름을 체감했습니다.

  2. 확장 가능한 시스템 설계 철학 확립

    • 다량의 IoT 데이터를 효율적으로 처리하고, 서비스 확장 가능성을 고려한 설계의 중요성을 깨달았습니다.

프로젝트

프로젝트명

Cloud Canvas

소속/기관명

네이버 부스트캠프

프로젝트 기간

2024.10. ~ 진행 중

프로젝트 내용

🛠 프로젝트 소개
Cloud Canvas는 클라우드 인프라 설계를 직관적이고 손쉽게 할 수 있는 혁신적인 도구입니다. 사용자는 그래픽 인터페이스를 통해 클라우드 인프라를 설계하고, 이를 Terraform 코드로 자동 변환하여 빠르고 효율적으로 배포할 수 있습니다. 특히 국내 클라우드 플랫폼을 지원하여 국내 사용자들에게 최적화된 환경을 제공합니다.


🎯 문제 상황과 해결 과정

  1. 테라폼 리소스 참조 문제

    • 문제 상황: 리소스 참조값이 하드코딩되어 리소스 이름 변경 시 전체 코드 수정이 필요했습니다.

    • 해결 과정: 플레이스홀더 패턴을 도입하여 모델에서는 PLACEHOLDER로 설정하고, 컨트롤러에서 실제 참조값으로 치환하도록 설계했습니다.

    • 성과:

      • 모델과 컨트롤러 간 의존성이 제거되어 유지보수성 향상.

      • 리소스 참조값 수정 시 한 곳에서만 변경하면 되어 개발 속도가 개선됨.

  2. 테라폼 리소스 참조값 검증 문제

    • 문제 상황: 단순 문자열 검증 방식으로 인해 잘못된 참조값도 허용되었음.

    • 해결 과정: 정규표현식을 활용하여 참조값 형식을 엄격히 검증.

      • 예: ^ncloud_[a-zA-Z_]+\.[a-zA-Z_-]+\.[a-zA-Z_]+$와 같은 패턴 사용.

    • 성과:

      • 잘못된 참조값 사전 방지.

      • 코드 가독성과 유지보수성 개선.

  3. 테라폼 리소스 생성 순서 문제

    • 문제 상황: JSON 입력 순서와 리소스 생성 순서가 달라 종속성 문제가 발생.

    • 해결 과정: ResourcePriority 열거형을 정의해 리소스 우선순위에 따라 정렬하여 생성.

    • 성과:

      • 의존성 문제 해결 및 안정적 리소스 생성.

      • JSON 데이터 입력 순서와 무관하게 올바른 생성 순서 보장.

  4. 다중 Region 처리 문제

    • 문제 상황: 단일 Region만 지원하여 다중 Region 리소스 관리 불가.

    • 해결 과정:

      • 각 Region의 Provider를 동적으로 생성.

      • 리소스 블록 생성 시 Region에 따라 올바른 Provider 참조.

    • 성과:

      • 다중 Region 지원.

      • 유연성과 확장성 대폭 향상.

  5. 코드 확장성 문제

    • 문제 상황: 새로운 리소스 추가 시 여러 파일 수정 필요 및 높은 의존성.

    • 해결 과정:

      • 인터페이스 기반 설계로 전환.

      • 리소스 파서를 분리하여 새로운 리소스 추가 시 최소한의 수정으로 기능 확장.

    • 성과:

      • 새로운 리소스 추가가 간편해짐.

      • 개방-폐쇄 원칙 준수로 유지보수성 향상.

  6. 테라폼 리소스 속성 포맷팅 문제

    • 문제 상황: 중첩 객체와 배열 처리가 미흡해 코드 가독성과 정확성 저하.

    • 해결 과정:

      • 속성 이름 길이에 따른 정렬 및 중첩 객체/배열 처리 로직 추가.

    • 성과:

      • 가독성 향상 및 Terraform 코드 출력 정확성 확보.

      • 중첩 데이터와 배열 데이터의 일관된 처리 방식 구현.


🔑 성과 및 결과

  • 확장 가능한 구조 설계: 새로운 리소스 추가 시 최소한의 수정으로 확장 가능.

  • 팀 협업 효율성 증가: 목데이터 기반 개발로 프론트엔드 의존도를 줄이고 작업 효율성 향상.

  • 유지보수성 강화: 리소스 참조값 관리 방식 개선으로 코드 수정 부담 감소.


🔧 기술 스택

  • 언어: Java, TypeScript

  • 프레임워크: Spring Boot

  • 도구: Terraform, IntelliJ, Git


🌟 느낀 점 및 배운 점

  • 유지보수성과 확장성을 고려한 시스템 설계의 중요성을 실무적으로 경험.

  • 팀원 간 명확한 의사소통과 API 문서화를 활용하여 협업 능력 강화.

프로젝트명

InjeRecipe

소속/기관명

개인

프로젝트 기간

2024.01. ~ 2024.03.

프로젝트 내용

🛠 프로젝트 소개
InjeRecipe는 사용자가 간단히 입력한 재료를 기반으로, 해당 재료로 만들 수 있는 요리를 추천하는 레시피 플랫폼입니다. 요리 준비의 효율성을 극대화하고 사용자에게 맞춤형 요리 정보를 제공하는 것을 목표로 개발되었습니다.


🎯 문제 상황과 해결 과정

  1. 레시피 검색 속도 개선

    • 문제 상황: 초기 데이터베이스 설계의 비효율적인 쿼리 구조로 인해 레시피 검색 속도가 느림.

    • 해결 과정:

      • 동적 쿼리를 작성하여 키워드 기반 검색 최적화.

      • 인덱스 최적화를 통해 데이터베이스 성능 향상.

    • 성과:

      • 검색 속도가 30% 이상 개선되어 대규모 데이터 처리 성능이 향상됨.

      • 사용자 경험이 크게 향상됨.

  2. 이미지 관리 문제

    • 문제 상황: 레시피별 이미지가 많아 로컬 스토리지 사용 시 공간 부족 및 관리 어려움 발생.

    • 해결 과정:

      • AWS S3를 도입해 이미지를 클라우드 스토리지에 저장.

      • 이미지 URL 참조 방식을 통해 효율적으로 관리.

    • 성과:

      • 안정적인 이미지 관리와 로컬 서버의 부하 감소.

      • 클라우드 스토리지 활용으로 확장성 강화.

  3. 사용자 인증과 보안 문제

    • 문제 상황: 소셜 로그인과 일반 회원가입을 모두 지원해야 하는 인증 체계의 복잡성.

    • 해결 과정:

      • OAuth2.0을 활용해 Google과 Kakao 소셜 로그인 구현.

      • Spring Security로 세션과 JWT 토큰 기반 인증 병행.

    • 성과:

      • 사용자 편의성과 보안성을 모두 만족하는 인증 시스템 구축.

      • 다양한 사용자 요구사항을 수용할 수 있는 유연한 인증 체계 구현.


🔑 성과 및 결과

  • 대회 출품: IT 창업 아이디어 대회에 교수님 추천으로 출품.

  • 홍보 자료 활용: 학과 홍보 자료로 사용되어 입시생들에게 긍정적 반응 획득.


🔧 기술 스택

  • 언어: Java

  • 프레임워크: Spring Boot, Spring Security

  • 데이터베이스: PostgreSQL

  • 클라우드 서비스: AWS S3

  • 인증: OAuth2.0


🌟 느낀 점 및 배운 점

  • 문제 해결 능력: 백엔드 구조 설계와 데이터베이스 최적화를 통해 성능 향상 경험.

  • 실무 경험: 사용자 중심의 기능 구현과 클라우드 활용 경험을 통해 실무 개발 프로세스 체득.

  • 협업 역량: 프론트엔드 개발자와의 원활한 소통으로 API 명세 작성 및 요구사항 적극 반영.

프로젝트명

Bragi

소속/기관명

개인

프로젝트 기간

2023.09. ~ 2023.11.

프로젝트 내용

🎵 프로젝트 소개
Bragi는 사용자들이 음악을 공유하고 소통할 수 있는 SNS 플랫폼입니다. 유저들은 자신이 좋아하는 음악을 추천하거나 플레이리스트를 공유하며 음악적 취향을 나눌 수 있는 경험을 제공합니다.


🎯 문제 상황과 해결 과정

  1. 문제: 사용자 인증과 권한 관리의 보안 강화 필요

    • 상황: SNS 플랫폼 특성상 사용자 데이터 보호와 인증 과정에서의 보안 문제가 중요했습니다.

    • 해결: Spring Security와 OAuth2.0을 도입하여 안전한 사용자 인증과 권한 관리 시스템을 구축했습니다.

      • 로그인 세션 관리와 토큰 기반 인증 구현.

    • 성과: 보안 강화로 사용자 신뢰도와 데이터 보호 수준 향상.

  2. 문제: 팀 내 백엔드와 프론트엔드 간의 비효율적인 API 설계

    • 상황: 백엔드와 프론트엔드 간의 데이터 교환 과정에서 필요한 데이터가 명확하지 않아 재작업이 발생.

    • 해결: Swagger를 활용하여 API 명세서를 작성하고, 초기 단계에서 클라이언트와의 긴밀한 협업을 통해 명확한 API 구조 설계.

    • 성과: 개발 과정에서 API 관련 수정 작업이 30% 감소, 효율적인 협업 환경 조성.


🔑 성과 및 결과

  • 사용자 경험 개선: 평균 응답 시간이 40% 감소하며, 검색 및 데이터 처리 성능이 대폭 향상됨.

  • 우수 프로젝트 선정: 학기 내 최고 점수를 받으며 37명 중 해당 학기 수석으로 인정됨.

  • 협업 능력 강화: 팀원들과의 긴밀한 소통으로 문제를 빠르게 해결하고, 안정적인 서비스를 구현.


🔧 기술 스택

  • 언어: Java

  • 프레임워크: Spring Boot, Spring Security

  • 데이터베이스: PostgreSQL (인덱스 및 쿼리 최적화 적용)

  • 도구: Git, Swagger, IntelliJ


🚀 프로젝트를 통해 얻은 것

  • 대규모 데이터 처리와 최적화 기법에 대한 실전 경험.

  • 사용자 요구 사항을 반영한 API 설계 및 협업 능력 강화.

  • 안정적인 인증 및 보안 시스템 구현 역량 습득.

교육

소속/기관명

네이버 커넥트재단

종류 | 전공

사설 교육 | 웹, 모바일

재학 기간 | 재학 상태

2024.07. ~ 2024.12. | 졸업

자격증

자격증명

정보처리기사

점수 | 발급기관

기사 | 한국산업인력공단

취득연월

2024.09.

댓글