채용공고 올리기

오유근님을 응원해보세요!

좋은 제안에 열려있어요

미리보기

기본 정보

이름
오유근
직업
백엔드 개발자
간단 소개

1. 개발 경험 & 스킬 - 다양한 산업 분야의 서비스 개발 경험 보유 (CDN, 제조, 게임 공통 플랫폼) - 현재 커뮤니티 플랫폼 담당 (150+ API, Service-mesh, gRPC 기반 아키텍처) - Clean Code 와 신기술 기반 레거시 서비스 리팩토링에 깊은 관심과 경험 2. 개발 문화 & 프로세스 - 코드 리뷰, 정적/통합 테스트 자동화 환경 구축, 개선 가능 - 애자일 방법론 기반 개발 프로세스 운영 및 팀 빌딩 경험 - 지속적인 프로세스 개선 제안 3. 개발 철학 & 성향 - Deep Dive 분석을 즐기며 새로운 기술 습득에 적극적 - 같은 질문을 100번 받아도 100번 친절하게 대답하는 커뮤니케이션 스타일 - 팀의 성장과 개선을 위한 적극적인 제안과 실행

기술 스택

기술 스택

Java, Spring, Kubernetes, MongoDB, istio, Tensorflow, Keras, Docker

경력

회사명

엔씨아이디에스

직급 | 부서 | 근무 유형

팀원 | UA서비스개발팀 | 재직 중

근무 기간

2024.10. ~ 재직 중 (5개월)

담당 업무

커뮤니티 백엔드 개발

회사명

엔씨소프트(주)

직급 | 부서 | 근무 유형

팀원 | UG플랫폼개발팀

근무 기간

2020.07. ~ 2024.09. (4년 3개월)

담당 업무

커뮤니티 백엔드 개발

  • GraphQL 도입을 통한 커뮤니티 운영툴 개선

  • MongoDB Mulit-Region Replica set tag set (Atals PoC)

  • MonoRepo + helm 적용

  • Service mesh + gRPC 적용

  • 이벤트 저장소 Cassandra → MongoDB 전환/마이그레이션

인증 백엔드 개발

  • DDD 기반 로그인 WebAPI 리팩토링

  • line, vk, 지사 인증 구현

  • 간편 로그인 기능 구현(QR 로그인)

  • 로그인 이력 정보 고도화 기능 구현

  • 백업인증 고도화 / VM → K8S 전환

회사명

효성ITX (주)

직급 | 부서 | 근무 유형

팀원 | 솔루션개발팀

근무 기간

2016.09. ~ 2020.06. (3년 10개월)

담당 업무

SmartFactory 백엔드 개발

  • 섬유 원사 단면 이미지 판독 솔루션 개발
  • 영업 지원 플랫폼 개발

CDN 서비스 개발

  • 파일 동기화 솔루션 개발
  • 로그 분석 솔루션 구축 및 개발 운영
  • 비디오 분산 트랜스코더 개발
  • 서비스 장애 모니터링 시스템 개발

프로젝트

프로젝트명

GraphQL 도입을 통한 커뮤니티 운영툴 개선

소속/기관명

엔씨소프트

프로젝트 기간

2024.05. ~ 2024.12.

프로젝트 내용

기술 스택

  • Java, Spring, GraphQL, Vue

내용 / 목적

  • 운영툴은 Frontend 와 Backend 모두 하나의 서버로 구동 되고 있었으나, 서비스와 사용자가 늘어남에 따라 다양한 요구사항들이 생겨남에 따라 UI/UX 개선이 불가피

  • Front 모듈은 FE 담당 부서에서 담당하고, Backend 모듈만 담당하여 개발하는 방식으로 결정

  • GraphQL Server/Client 도입으로 기존 REST 의 Overfetching & Underfetching 을 개선하고자 함

전체 구조

  • 기존 운영툴 서버에서 GraphQL Endpoint 추가

    • 기존 REST API 와 공존하는 방식으로 점진적 전환

  • 신규 운영툴 BFF 서버 구성

역할

  • GraphQL 기반 Backend 아키텍처 설계 및 도입

    • GraphQL Server 구축 및 스키마 설계

    • 기존 REST API 기반 데이터 모델을 GraphQL Schema 로 변환

    • API 명세 설계 (Query, Mutaion)

  • GraphQL 검증을 위한 테스트

    • GraphQL 통합 테스트 작성 (spring-graphql-test 활용)

결과 및 성과

  • GraphQL 도입을 통합 데이터 Overfetching / Underfetching 해결

    • 기존 REST API 대비 최적화된 데이터 요청 가능, 클라이언트 부담 감소

  • Backend 개발 및 API 관리 효율성 증가

    • 단일 Enpoint 에서 다양한 Query 처리 가능, API 수정의 유연성 증대

프로젝트명

KEDA HTTP Request Based AutoScaling PoC

소속/기관명

엔씨소프트

프로젝트 기간

2024.05. ~ 2024.06.

프로젝트 내용

기술 스택

  • Kubernetes, KEDA, Prometheus

내용 / 목적

  • 각 팀에서 Kubernetes Cluster 운영이 가능한 환경으로 변화함에 따라, KEDA 를 활용한 Ingress Controller AutoScaling 가능 여부 테스트

  • 기존 CPU/Mem 기반 HPA 조정은 가증했지만, Prometheus 에서 수집한 다양한 메트릭 기반으로도 AutoScaling 이 가능한지 검증

전체 흐름

  • 트래픽이 Ingress 로 들어오면 Prometheus Server 가 Ingress Controller 메트릭 수집

  • KEDA 의 Scaler 가 Prometheus server 에 PromQL 쿼리로 메트릭 수집

  • 수집된 메트릭 기반으로 Kubernetes API Server 에 등록

  • Scaling Trigger 가 되면서 Ingress Controller Pod 증가

역할

  • KEDA + Prometheus 기반 AutoScaling 아키텍처 설계 및 검증

  • PromQL 쿼리 최적화

    • 요청수, 응답시간 기반 스케일링 조건 설정

  • AutoScaling 트리거 조건 최적화

    • 트래픽, 응답 시간 기반으로 적절한 Threshold 값 설정

  • Ingress Controller AutoScaling 성능 테스트 수행

결과 및 성과

  • Prometheus 기반 AutoScaling 가능 여부 검증 완료

  • CPU/Mem 외에도 수집된 메트릭 기반으로 AutoScaling 가능함을 확인

  • CPU 기반으로 Scaling 보다 KEDA + Prometheus 실시간 데이터를 활용하여 더 빠르게 대응 가능

  • 과부하 시 Ingress 안정성 향상 효과 기대

프로젝트명

MongoDB Multi-Region Replica Set Tag Set (Atlas PoC)

소속/기관명

엔씨소프트

프로젝트 기간

2024.04. ~ 2024.06.

프로젝트 내용

기술 스택

  • Java , Spring , MongoDB , GCP , Atlas

내용 / 목적

  • MongoDB Replica Set 을 Multi-Region 환경에서 운영하기 위한 구성 및 테스트

  • Multi-Region 데이터 가용성 (Failover 대응) 테스트

  • GCP 에 구성된 커뮤니티의 글로벌 몽고 클러스터의 대체 가능성 확인

전체 구성

  • Tag Set 을 사용하여 지역 기반 (Region-based) 읽기/쓰기 최적화

    • 각 Region 의 클라이언트가 가장 가까운 Secondary 를 통해 데이터에 접근하도록 설정

  • Replica Set 2개(Shard 2) 를 사용하여 데이터 분산

    • Replica Set 1 (Zone: KR)

      • Primary A : KR Region 에서 Primary 역할

      • Secondary A : KR Region 에서 데이터 복제

      • US Region 에도 Secondary A (Priority 0) 을 배치하여 장애 복구 대비

    • Replica Set 2 (Zone: US)

      • Primary B : US Region 에서 Primary 역할

      • Secondary B : US Region 에서 데이터 복제

      • KR Region 에도 Secondary B (Priority 0) 을 배치하여 장애 복구 대비

  • Zone Tags 를 사용한 지역 기반 라우팅

    • KR 클라이언트 → Replica Set 1 (Zone kr)

    • US 클라이언트 → Replica Set 2 (Zone us)

  • Write Concern 조정 (W=1)

    • 각 Region 에서 쓰기 요청을 빠르게 수행하기 위해 Write Concern = W1 조정

    • Primary 만 Write Acknowledgment 를 수행하도록 설정하여 쓰기 성능 최적화

역할

  • MongoDB Cluster 구성 및 최적화

  • 성능 최적화 (Read / Write Concern 조정)

  • 장애 복구 (Failover) 및 데이터 일관성 검증

결과 및 성과

  • Multi-Region 데이터 가용성 확보

    • Failover 발생 시 Primary 가 정상적으로 승격됨을 확인

    • Atlas 환경에서 자동 장애 복구 기능 정상 동작 확인

  • Write Concern = W1 을 설정하여 쓰기 최적화 성능 검증

  • Read Preference = Nearest 적용 후 클라이언트 응답 속도가 약 30% 개선됨

  • 운영 효율성 개선 검증

    • MongoDB Atlas 의 Multi-Region 기능을 활용하여 운영 부담 최소화 가능성 확인

    • Failover 및 장애 대응 자동화가 가능하여 클러스터 운영 안정성 증가 확인

프로젝트명

MonoRepo + Helm 적용

소속/기관명

엔씨소프트

프로젝트 기간

2024.02. ~ 2024.03.

프로젝트 내용

기술 스택

  • Gradle, Kubernetes, Helm , Jenkins , Java

내용 / 목적

  • Gradle 기반 MonoRepo 를 사용함으로써 빌드 속도를 최적화 하고 중복 작업 최소화 목적

  • 버전 관리 자동화

  • Helm Umbrella Pattern 을 적용하여 중복 설정 재사용 / 개별 서비스 배포 단순화 목적

전체 구성

  • Root Project 의 build.gradle 공통 빌드 설정

  • 각 프로젝트의 gradle.properties 버전 관리

  • version.json 기반 빌드 트리거

  • Helm Umbrella Pattern 구성

역할

  • Gradle 이 Maven 보다 build Script 작성에 수월하여 전체 프로젝트 Maven → Gradle 로 변경

  • Gradle Version 관리 Plugin 개발

    • Git diff 하여 변경된 모듈 탐색

    • 변경된 모듈 자동 버전 증가

    • 선택된 모듈만 Gradle 빌드 수행

    • 변경된 모듈이 영향을 미치는 서비스의 의존성 업데이트

    • artifactory 에 업로드

  • Helm Umbrella Pattern 구조로 구성

결과 및 성과

  • 관리 측면

    • 공통 외부 의존성 한 번에 관리 가능

    • 공통 설정 재사용

    • 서비스별 독립적 버전 관리 가능

    • 배포 프로세스 단순화

    • 개발 생산성 증가

프로젝트명

Service mesh + gRPC 적용

소속/기관명

엔씨소프트

프로젝트 기간

2022.08. ~ 2023.10.

프로젝트 내용

기술 스택

  • Java , Spring , Armeria, MongoDB , Kubernetes , Envoy

내용

  • REST → gRPC 전환을 통한 성능 최적화 및 운영 비용 절감

  • Envoy Sidecar 기반 Service Mesh 구성 및 Client Side gRPC Load Balancing 문제 해결

  • 외부 서버는 REST 로 요청하고 내부는 gRPC 로 통신하는 구조

  • Q. Armeria 를 사용한 이유?

    • 하나의 PORT 로 REST/gRPC 동시에 서빙 가능하다는 장점

    • Spring 과 통합하기 수월

역할

  • Envoy Proxy 리서치 및 적용

    • gRPC-JSON Transcoder 성능 검증 → TPS 기준 1.5 배 향상

    • REST vs gRPC vs gRPC-JSON Transcoder 비교시, Transcoder 사용으로 12.52ms 성능 패널티 확인 (vuser 32 기준)

    • MongoProxy 지원 불가 (MongoDB 3.6+) 확인 (https://github.com/envoyproxy/envoy/issues/34365)

    • xDS 표준화 및 로드밸런싱 최적화 (STRICT, STRICT_DNS + ROUND_ROBIN, connection_balance_config=exact_balance)

    • Sidecar 적용 시 성능 패널티 (약 2.5ms) 검증

    • Client Side 로드 밸런싱 테스트 (k8s headless service + envoy)

  • gRPC Conventions 및 가이드 작성

  • REST/gRPC 각 Endpoint 별 통합 테스트 Coverage 100% 달성

  • Armeria httpJsonTranscoder 적용 / 테스트

    • JSON 변환 시 Armeira 내부에서 직접 변환해서 JSON 전환 비용이 Envoy filter 보다 저렴함

    • json_name 미지원 확인 및 Contribute ( https://github.com/line/armeria/pull/5366 )

    • HTTP JSON to gRPC mapping Rules 정의

결과 및 성과

  • 성능 향상 측면

    • 내부통신 gRPC 로 변경 - 약 20~25 % 성능 향상 (TPS, 응답속도, 응답사이즈 모두 포함)

    • Armeria httpJsonTranscoder - 약 20% 성능 향상 (TPS, 응답속도, 응답사이즈 모두 포함)

  • 비용 절감 측면

    • 운영 Pod 50% 이상 감소 / 5 개의 Pod 로 10,000 TPS 커버 가능

  • 서비스 안정성 측면

    • 통합 테스트 Coverage 100% 달성

  • Armeria Contribute

프로젝트명

이벤트 저장소 Cassandra → MongoDB(Time-Series Collection) 전환/마이그레이션

소속/기관명

엔씨소프트

프로젝트 기간

2022.10. ~ 2023.02.

프로젝트 내용

기술 스택

  • Java , Spring , kafka, cassandra , MongoDB , Kubernetes

내용

  • 통계 데이터로 활용하는 이벤트 저장소를 Cassandra → MongoDB(Time-Series Collection) 으로 전환/마이그레이션

Q. Cassandra → MongoDB 전환 이유

  • Cassandra Keyspace 생성시 OOM 발생 및 동기화 지연 발생 문제

    • 새로운 Keyspace 생성되면 Cassandra Client(Driver) 가 해당 변경 사항을 감지하고 Metadata 를 갱신하는 과정에서 OOM 발생하거나 메모리 사용량이 급증하는 문제

    • 클러스터 크기가 커질 수록 메타데이터 동기화 지연이 발생

  • MongoDB Time-Series Collection 사용시 이점

    • Collection 을 동적으로 생성 가능

    • Schema-less 구조이므로, 새로운 필드 추가시 테이블을 다시 로드할 필요가 없음

    • Time-Series Collection 을 사용하면 스토리지 효율성이 향상되고, 메모리 사용량이 줄어듦

    • 통계성 데이터이므로 Write 성능보다는 Read 성능이 더 중요하고, Time-Series Collection 은 내부적으로 데이터 압축 및 자동 샤딩 최적화 적용이 됨

전체 구조

  • Migration Master

    • MongoDB 의 Migration Collection 을 Polling 하여 마이그레이션 할 Task 가져옴

    • Kafka 를 통해 Migration Slaves 에게 작업을 Publish 하고 Status 상태 변경 (Trigger)

    • Slave 작업 완료시 Completion Event 감지하여 Status 업데이트

  • Kafka (Message Broker)

    • Migration Master 가 마이그레이션 Task 를 Publish

    • Migration Slaves 가 이를 Consume 하여 Cassandra 에서 데이터를 가져와서 MongoDB 로 저장

    • 작업 완료시 Completion Event 를 Master 에 전달

  • Migration Slave (Worker Nodes)

    • Kafka 에서 마이그레이션 Task 를 Consume

    • Cassandra 에서 데이터를 Read 후 MongoDB 에 Write

역할

  • MongoDB 스키마 설계 및 최적화

    • Time-Series Collection 적용 및 Index 추가

  • Cassandra → MongoDB 마이그레이터 개발 및 마이그레이션

    • Kafka 기반 마이그레이션 시스템 구축

  • 실시간 데이터 적재 아키텍서 설계

    • 별도의 Consumer 를 통해 신규로 발행되는 이벤트들을 MongoDB 로 적재

  • 마이그레이션 데이터는 운영 부하를 최소화하는 수준의 Task 를 생성하여 순차적으로 수행

  • 데이터 정합성 검증

결과 및 성과

  • 운영 안정성 향상

    • Cassandra 에서 발생했던 Keyspace Metadata 문제(OOM, 동기화 지연) 해결

    • 동적으로 Collection 으로 생성할 수 있어서 운영 부담 감소

    • 커뮤니티 Main DB 인 MongoDB 와 같은 기술 스택을 선택함으로써 운영 리스크 감소

프로젝트명

DDD 기반 WebAPI 리팩토링

소속/기관명

엔씨소프트

프로젝트 기간

2022.02. ~ 2022.05.

프로젝트 내용

기술 스택

  • Java , Spring , Kubernetes , SonarQube , Jenkins

내용

  • 모놀리식 환경 내에서 DDD 리팩토링을 통한 지연 최소화 및 유지보수성 향상

  • 디자인 패턴 적용으로 코드 재사용성 및 확장성 개선

  • SonarQube 도입 및 코드 품질 표준화

  • Spring Formatter 및 CheckStyle 적용으로 코드 스타일 일관성 유지

  • LoginLog 적재 구성 및 LoginType 별 로그인 성공/실패 시각화

역할

  • 코드 리팩토링 및 DDD 구조 적용

    • 로그인 WebAPI 의 도메인 중심 설계 적용

    • 팩토리 메서드 패턴, AOP 기반 로깅, 퍼사드 패턴 등 디자인 패턴 적용

    • LoginType 기반으로 로그인 방식(Session, Token, QR 등) 도메인 분리

    • 도메인 간 응집도 향상 및 중복 코드 제거

  • 코드 품질 및 표준화

    • SonarQube 도입 및 품질 관리

    • SpringFormatter & CheckStyle 적용

  • 서비스 안정성 및 성능 최적화

    • QoS Guaranteed 및 Graceful shutdown 적용

결과 및 성과

  • 서비스 안정성 측면

    • SonarQube 분석 결과, Bad Smell 10% 이하 달성 및 잠재적 버그 개선

    • 테스트 커버리지 0% → 60% 향상

    • 코드 재사용성 및 유지보수성 개선

    • QoS 및 Graceful Shutdown 적용으로 서비스 안정성 향상

    • SpringFormatter 및 CheckStyle 적용을 통한 코드 스타일 통일

  • 협업 방식 개선 및 장애 대응 속도 향상

    • LoginType 을 명확히 정의하여 의사소통 비용 절감

    • AOP 기반 로그인 성공/실패 로그 자동화 → CS 및 운영 대응 속도 향상

프로젝트명

글로벌 회원 시스템 개편

소속/기관명

엔씨소프트

프로젝트 기간

2021.03. ~ 2021.10.

프로젝트 내용

기술 스택

  • Java , Spring , Kubernetes

내용

  • 비로그인 백업 인증 기능 추가

  • 사내 L10N 정책에 맞춘 언어 반환 서버 개발

    • 국가 코드 기반 언어 우선순위 로직 반영

    • 글로벌 환경에서 사용자별 맞춤 언어 제공

  • Envoy Edge Case 적용을 통한 IDC / GCP 환경 통합

    • IDC와 GCP 간 점검 페이지 전환을 통일화

    • Envoy LuaFilter 기반 리다이렉트 처리 적용

역할

  • 비로그인 백업 인증 기능 구현

    • 실명 / 비실명 / 휴면 계정 케이스별 로직 정리 및 검증

    • 백업 인증 번호가 등록된 경우 : 백업 인증 수행 후 비밀번호 변경 가능

    • 백업 인증 번호가 등록되지 않은 경우 : 백업 인증 등록 후 비밀번호 변경 가능하도록 처리

    • 다양한 테스트 케이스별 검증 자동화

      • 실명 / 비실명 / 휴면 계정 상태별 테스트 시나리오 작성

      • 백업 인증 번호 등록 유무에 따른 플로우 검증

  • 글로벌 서비스 대상 Localization 대응 (Language Resolver Server 구현)

    • 사내 L10N 정책 기반의 언어 우선 순위 적용

    • 국가 코드 기반 기본 언어 코드 반환 기능 개발

    • 글로벌 사용자 환경에 따라 맞춤 언어 지원

  • Envoy Edge Case 도입

    • IDC 와 GCP 환경에 따라 동일한 점검 페이지 제공

    • LuaFilter 적용하여 리다이렉트 처리

결과 및 성과

  • 서비스 측면

    • 글로벌 환경에서(비실명계정) 비밀번호 찾기 수단 확대

    • 각 국가별 적절한 언어 제공 → 사용자 경험 향상

  • 운영 관리 최적화

    • IDC / GCP 환경에서 점검 페이지 일관성 유지

    • 환경별 운영 정책을 통일하여 유지보수 효율성 증대

프로젝트명

3rdParty 로그인 기능 확대

소속/기관명

엔씨소프트

프로젝트 기간

2021.08. ~ 2021.09.

프로젝트 내용

기술 스택

  • Java , Spring , Kubernetes

내용

역할

  • VK, LINE OAuth 서비스 분석

  • Market 관리 기능 분석 및 (SDK, PM) Guide

  • 지사 3rdParty Login Flow 표준화

  • VK, LINE, 지사 인증 페이지에서 AccessToken 획득 후, 내부 인증 요청 기능 추가

결과 및 성과

  • 서비스 측면

    • 글로벌 환경에서 로그인 수단 확대로 접근성 향성

프로젝트명

간편 로그인 (QR 로그인)

소속/기관명

엔씨소프트

프로젝트 기간

2021.01. ~ 2021.02.

프로젝트 내용

기술 스택

  • Java , Spring , Kubernetes

내용

  • 모바일 기기에서 이미 로그인 된 세션으로 Launcher 로 로그인할 수 있는 기능

  • 퍼플런처에서 로그인 가능

역할

  • QR Login Server / Web 개발

    • QR Code 생성, 인식, 인식 이후 Login Process 처리

  • QR Login Process Guide

결과 및 성과

  • 보안 측면

    • 계정 탈취 측면에서 안정성 제공

  • 서비스 측면

    • 개인 PC 나 Device 가 아닌 기기로 로그인 할 때 유저들의 편의성 제공

프로젝트명

VM → k8s 전환 / 리팩토링

소속/기관명

엔씨소프트

프로젝트 기간

2020.07. ~ 2020.09.

프로젝트 내용

기술 스택

  • Java , Spring , Docker, Kubernetes

내용

  • BE / FE Product 분리

    • JSP 구조로 된 Product 를 Web Serving + REST API Server 로 분리

      • 보안 웹 + API Server

      • 백업인증 웹 + API Server

  • VM → kubenetes 전환

  • Docker image 최적화 적용

  • https://security.plaync.com/index

역할

  • 코드 레벨 리팩토링

  • RESTful API 재설계

    • 하위 호환성을 위해서 기존 Path Redirect 처리 후 100% 전환 이후 제거

  • BE / FE Product 분리

  • VM → Kubenetes 전환

  • JVM 튜닝

결과 및 성과

  • 비용 절감 측면

    • Docker 이미지 최적화로 빌드시간, 네트워크 트래픽, 용량 절감

    • VM → Kubenetes 전환으로 비용 절감

      • 기존 VM 장비 20EA → Total min pod 8 EA

  • 서비스 안정성 측면

    • 코드 재사용성 향상

  • 관리 측면

    • BE / FE 분리로 인한 편의성 향상

프로젝트명

Smart Factory 영업 지원 플랫폼

소속/기관명

효성ITX

프로젝트 기간

2020.01. ~ 2020.06.

프로젝트 내용

기술 스택

  • Java , Spring , MySQL, Airflow , Python , Flask , Cloudera

내용

  • 중공업 영업과 관련된 조달청 및 경쟁사 사이트에서 데이터 수집 및 분석 결과를 조회

역할

  • 빅데이퍼 플랫폼 PoC 진행

    • Docker 기반 Cloudera 환경 구축 (HDFS, YARN, HBase)

    • Kafka 메시지 전달 → HBase 적재 테스트 수행

  • Airflow 기반 ETL 자동화

    • Airflow Docker 환경 구축 & API 기능 추가

      • 기본 CLI/API 에서 제공하지 않는 기능 추가 구현 (DAG 실행, 강제 종료 기능)

  • Airflow Operator Template 개발

    • 조달청 및 경쟁사 사이트에서 키워드 검색을 통한 데이터 수집 자동화

  • Web 연동 API 및 UI 개발

    • Airflow & Web 연동

      • 웹에서 키워드 및 카데고리 선택 후 DAG 생성 가능

      • Velocity Template 기반으로 DAG 파일을 자동 생성

      • SFTP 로 Airflow DAGS 폴더에 전송 → Airflow Scheduler 가 자동 인식 및 스케줄링

    • 영업 카테고리 분류 기능 개발

    • 수집 이력 조회 및 대시보드 개발

결과 및 성과

  • 빅데이터 환경에서 실시간 데이터 수집 및 적재 검증

  • Airflow 기반 데이터 파이프라인 자동화로 관리 효율성 증가 기대

  • 웹 기반으로 키워드 & 카테고리 선택후 DAG 생성 가능으로 사용자 친화적 UI 제공

  • 데이터 수집 이력 관리 및 대시보드 구축으로 분석 및 운영 편의성 향상

프로젝트명

섬유 원사 단면 이미지 판독 솔루션

소속/기관명

효성ITX

프로젝트 기간

2019.03. ~ 2019.12.

프로젝트 내용

기술 스택

  • Python, Tensorflow, OpenCV, Java , Spring , Mask R-CNN

내용

  • 섬유 절단면 이미지에서 단면 객체를 Detector 하고, 알고리즘을 통해 양/불 판정하는 솔루션

역할

  • 이미지 전/후처리 및 양/불 판정 알고리즘 구현

    • Python + OpenCV 기반 전처리 알고리즘 개발

      • 잡티 제거, 잘못 감지된 객체 필터링, 윤곽선 분석

      • 이미지 병합 및 이형도, 단면비, 융착, 집속비 등 주요 판정 지표 계산 알고리즘 구현

      • 객체의 형상을 정규화하여 일관된 품질 판정 모델 적용 가능하도록 설계

  • TensorFlow + Keras 기반 원사 단면 분석 모델 개발

    • Mask R-CNN 기반 Object Detection 모델 구현

    • Neural Architecture Search 적용

      • 정확도 향상을 위해 다양한 Backbone 모델 테스트 (ResNet, EfficientNet 등)

    • 공장별 데이터셋에 최적화된 HyperParmaeter Tuning 수행

    • 실제 공장 이미지 데이터 기반 Fine-tuning 진행

  • 학습 데이터 수집 웹 개발

    • VGG Image Annotator 연동하여 이미지 데이터 라벨링 자동화

    • 기존 측정 데이터 재사용이 가능하도록 웹 기반 데이터셋 관리

결과 및 성과

  • AI 기반 섬유 원사 단면 판독 시스템 구축으로 수작업 대비 정확도 향상

  • 데이터 수집 & 전처리 자동화로 공정 최적화

프로젝트명

파일 동기화 솔루션

소속/기관명

효성ITX

프로젝트 기간

2018.01. ~ 2018.04.

프로젝트 내용

기술 스택

  • Java, Spring, ZkFramework, SyncSing, Cubrid, RabbitMQ

내용

  • 고객사 사용자의 원격 시스템에서 파일 업로드/디렉토리 관리 시 해당 서비스 서버 그룹에 실시간 동기화 하는 솔루션 개발

  • Agent 기반 파일 감지 및 실시간 동기화

전체 구조

  • 고객사 사용자의 원격 시스템에서 파일 업로드 & 관리

    • FTP/FTPS/SFTP 프로토콜을 이용하여 파일 업로드, 다운로드 및 디렉토리 관리

  • 서비스 서버 그룹 내 동기화

    • Agent 가 파일 변경 사항 감지 후 이벤트 발생

    • 소켓 통신을 이용하여 서비스 서버 그룹 내 실시간 파일 동기화 수행

    • Syncthing 을 이용하여 파일 시스템 변경 자동 반영

  • 관리 서버에서 동기화 설정 및 모니터링

    • WAS 서버 → DB 를 통해 동기화 설정 및 현황 관리

    • Message Queue 를 통해 동기화 요청을 Agent 로 전달 후 파일 무결성 검증

역할

  • 파일 동기화 감지 및 처리 기능 개발

    • Agent 기반 파일 업로드 / 디렉토리 변경 감지 기능 구현

    • Java NIO WatchService 를 활용하여 파일 시스템 변경 감지

    • 소켓 통신을 통한 서비스 서버 그룹 간 실시간 파일 동기화 구현

      • TCP 소켓을 이용한 서버 간 파일 변경 정보 전달 및 적용

  • 관리 서버에서 동기화 설정 및 모니터링 기능 개발

    • 동기화 그룹 설정 기능 구현

    • FTP, SFTP 프로토콜 관리 기능 구현

    • 파일 동기화 현황 모니터링 기능 개발

  • RabbitMQ 기반 파일 무결성 검증

    • 관리자 페이지에서 입력한 동기화 요청을 MQ 로 전달

    • Agent 에서 메시지를 읽어 파일 변경 처리 → 동기화 완료 후 큐 상태 업데이트

결과 및 성과

  • 고객사 시스템과 서비스 서버 그룹 간 파일 무결성 보장 및 파일 동기화 자동화

  • 동기화 그룹 설정 및 모니터링 UI 제공으로 관리 편의성 향상

  • FTP, SFTP, FTPS 업로드 방식 제공으로 사용자 편의성 증대

프로젝트명

로그 분석 솔루션

소속/기관명

효성ITX

프로젝트 기간

2018.01. ~ 2018.11.

프로젝트 내용

기술 스택

  • Java, Spring, Elastic Stack, React, Angular V2

내용

  • Edge Server 의 트래픽, 로그 데이터 들을 안전하게 수집, 저장, 분석할 수 있는 모니터링 시스템

  • 멀티 태넌시 환경을 지원하는 ElasticSearch & Kibana 커스텀 플러그인 개발

역할

  • ElasticSearch 멀티태넌시 Plugin 개발

    • 계정 및 그룹별 접근 권한 관리 기능 구현

    • ElasticSearch 인덱스 권한 설정을 통한 멀티테넌트 지원

    • 각 사용자 그룹마다 개별적인 로그 조회 및 검색 필터 적용 가능

  • Kibana Custom UI Plugin 개발

    • 멀티태넌트 환경에서 사용자가 선택한 인덱스만 조회 가능하도록 커스텀 UI 개발

    • 사용자 및 그룹별 대시보드 및 시각화 Plugin 개발

    • 로그 데이터를 필터링 하여 특정 이벤트 발생시 자동 알림 기능 추가 (Slack 메시지 전송)

  • Filebeat Custom Module 개발

    • Edge 서버별 맞춤형 로그 파싱을 위한 filebeat 모듈 개발

결과 및 성과

  • Edge 서버 로그 수집 및 분석 자동화로 운영 효율성 향상

  • 멀티태넌시 기반 접근제어를 통한 사용자 맞춤형 로그 분석 지원

  • 알림 전송 기능추가로 장애 감지 및 대응 시간 단축

프로젝트명

비디오 분산 트랜스 코더

소속/기관명

효성ITX

프로젝트 기간

2017.01. ~ 2017.11.

프로젝트 내용

기술 스택

  • Java, Spring, Cubrid, FFmpeg, Redis

내용

  • 분산 처리되는 트랜스 코딩 서버로 여러 개의 옵션을 동시에 처리하며 분산된 서버들로 즉시 동기화 되는 솔루션 개발

  • 각 트랜스코딩 서버는 대기 상태를 감지하여 적절한 작업을 할당 받고, 변환 후 실시간 동기화 진행

  • RTMP 기반 스트리밍 서비스 및 고객사별 맞춤 트랜스코딩 옵션 제공

전체 구조

  • 파일 업로드 서버

    • FTP/SFTP/HTTP 업로드된 파일을 트랜스코딩 서버로 전달

  • 트랜스 코딩 서버에서 변환 작업 수행

    • 요청된 트랜스코딩 설정(Metadata) 를 조회하여 변환 옵션 적용

    • 대기 상태 중인 트랜스코더 서버를 자동 할당하여 분산 처리 진행

    • 변환 완료된 파일을 서비스 서버로 자동 배포

  • 메타데이터 및 변환 정보 관리

    • 트랜스코딩 진행 정보를 Redis 에 임시 저장 후 RDBMS 에 영구 저장

  • 스트리밍 서비스 및 웹 관리 기능 제공

    • Wowza 기반 RTMP 스트리밍 서비스 제공

    • 미리보기 기능 제공

    • 고객사별 트랜스 코딩 설정 및 파일 관리 기능 제공

역할

  • 업로드 스토리지 서버 구축

    • FTP/SFTP/HTTP 업로드된 파일을 저장하는 임시 스토리지 서버 개발

    • 업로드된 파일을 트랜스코딩 서버에 전달하는 기능 개발

  • 트랜스코딩 서버 개발

    • 트랜스코딩 요청시 메타데이터 조회 후 파일 옵션에 맞춰 변환 지행

    • fftmpeg 기반 변환 옵션 적용 (비디오 프로파일, bitrate, 썸네일 생성 등)

    • 대기 중인 트랜스코더 서버를 찾아 자동 작업 분배 및 동시 처리 구현

    • 변환된 파일을 서비스 서버로 자동 배포 및 동기화

  • 트랜스코딩 관리 Backoffice 개발 (고객사용 / 운영자용)

    • 디렉토리 및 콘텐츠 관리

    • 트랜스코딩 옵션 및 서비스 서버 설정 기능 추가

    • RTMP 스트리밍 서비스 제공(미리보기)

결과 및 성과

  • 서버 자동 할당으로 서버 활용도 증가 및 리소스 최적화

  • 트랜스코딩 처리 속도 개선

  • 트랜스코딩 완료후 자동 배포 및 실시간 동기화 기능 구축

프로젝트명

서비스 장애 모니터링 시스템

소속/기관명

효성ITX

프로젝트 기간

2016.09. ~ 2016.12.

프로젝트 내용

기술 스택

  • Java, Spring, Cubrid, D3.js

내용

  • Ston 서비스를 이용하는 서버에 대한 5분 단위 데이터 수집 및 특정 임계치 상태 분석을 통한 장애 진단 모니터링 시스템

역할

  • 5분 단위 통계 데이터 수집 Agent 개발

    • Ston Edge 서버에서 발생하는 데이터 수집

  • Ston Edge 서버의 비정상 감지 기능 구현

  • Origin, Client 서버의 Inbound, Outbound 트래픽 임계치 상태 분석 기능 구현

  • Service Id 별 수집 데이터 조회, 장애 이벤트 조회, 상태 조회 코드 차트, 응답 속도 차트 구현

결과 및 성과

  • 고객사 안정성 제공

포트폴리오

URL

link

Notion 경력기술서

노션
link

Tech Blog

깃허브
link

Git Hub

깃허브

교육

소속/기관명

연세대학교

종류 | 전공

대학원(석사) | 컴퓨터공학

재학 기간 | 재학 상태

2017.09. ~ 2020.02. | 졸업

소속/기관명

대전대학교

종류 | 전공

대학교(학사) | 정보통신공학과

재학 기간 | 재학 상태

2008.03. ~ 2012.02. | 졸업

자격증

자격증명

정보처리기사

점수 | 발급기관

기사 | 한국산업인력공단

취득연월

2015.07.

자격증명

OCJP

점수 | 발급기관

Oracle

취득연월

2015.05.

자기소개

자기소개

Awards

쏘카 X 정보과학회 AI 분석경진대회 장려상, 정보과학회

  • Yolo V3 Darknet 으로 검출된 차량의 IoU 지수를 활용해 주차 공간 찾는 알고리즘 적용

  • 주차 공간이 아니지만 주차 공간으로 인식하는 경우 예외 알고리즘 적용

현대 IHL 아이디어 공모전 우수상, 현대 IHL

  • GPS 로 현재 위치 기반 인근 실시간 신호 정보(디지털화 된 신호등 만 해당)를 국가교통정보센터에서 받아서 모바일로 신호등 변경 예상 시간을 받을 수 있는 기능 구현

Training

  1. 학습 테스트로 배우는 Spring 3기 / 2024.06 / NEXTSTEP

  2. 인프라공방 / 2022.07 ~ 2022.09 / NEXTSTEP

  3. 도커/쿠버네티스 온라인 부트 캠프 / 2021.08 ~ 2022.01 / 멋쟁이사자처럼

  4. ATDD 클린 코드로 가는길 / 2020.02 ~ 2020.03 / NEXTSTEP

  5. 시큐어코딩 자바 양성 과정 / 2015.03 ~ 2015.08 / 폴리텍대학, 고용노동부

  6. 자바 양성 과정 / 2014.09 ~ 2014.12 / 롯데정보통신, 고용노동부

댓글