미리보기
기본 정보
해결 방안을 제시하는 집념의 개발자, 노유나입니다!
기술 스택
NestJS, Node.js, JavaScript, TypeScript, MongoDB, MySQL, Docker, Git
경력
주식회사디케이앤트
연구원 | 연구소 | 재직 중
2024.02. ~ 재직 중 (11개월)
실종자 수색 프로젝트
긴급한 일정 내 외부 연계 API 개발:
워킹데이 5일 만에 외부 연계 API 개발 완료, 실종자 수색 시스템의 핵심 기능 구현.효율적인 협업과 신속한 대응:
짧은 개발 기간에도 프로젝트 요구사항을 정확히 충족하며, 외부 시스템과의 API 통합 및 테스트를 안정적으로 완료.
하남시 스마트 시티 Database 수평 확장
DB OOM 문제 개선:
주 7회 발생하던 DB OOM(Out Of Memory) 문제를 0회로 감소.
MongoDB에서 ScyllaDB로 이관하여 하루 약 600만 건의 데이터를 안정적으로 처리.
수평 확장 및 안정성 향상:
ScyllaDB의 수평 확장 구조를 통해 데이터 처리 안정성과 검색 성능 대폭 향상.
Docker 기반의 ScyllaDB 이미지로 15개 지자체에 일관된 DevOps 환경 제공, 배포 효율성을 크게 증대.
짧은 학습 및 안정화 성과:
Docker와 ScyllaDB를 처음 다뤘음에도 불구하고 한 달 만에 80% 이상 안정화를 달성하며 프로젝트 기여.
카메라 모듈 개선
카메라 연계 개발:
프록시 패턴을 적용해 4가지 종류의 카메라를 단일 코드베이스로 통합, 유지보수와 확장성을 개선.
한솔PNS(주) ITS부문
인턴사원
2023.10. ~ 2023.12. (3개월)
MES(MANUFACTURING EXECUTION SYSTEM) 운영 개발에 참여하여 제조 공정 개발
스파게티 코드 형태로 엉킨 로직을 마스터 테이블로 정리하여 전체 코드의 약 27%를 줄여 가독성과 자원 효율성 개선
프로젝트
콘서트 예약 프로젝트
개인
2024.11. ~ 진행 중
목적: 사용자들이 콘서트 좌석을 공정하게 예약하고, 포인트 기반으로 결제할 수 있도록 지원하는 시스템 개발.
레이어드 아키텍처를 기반으로 설계, 각 계층은 역할과 책임을 분리하여 유연성과 확장성을 극대화.
인덱스 설정을 추가하여 조회 성능 최대 약 99.81% 개선
주요기능
결제 시스템: 유저가 포인트를 사용해 선택한 좌석을 결제.
대기열 시스템: 예약 요청이 순차적으로 처리되어 공정성 확보.
포인트 시스템: 유저가 계정에 포인트를 충전하고, 티켓 결제에 활용 가능.
좌석 예약 보호: 일정 시간 동안 결제되지 않은 좌석은 임시로 보호되며, 시간 초과 시 다른 유저가 예약 가능.
동시성 문제 해결을 위한 NestJS 기반 API 개발
개인
2024.10. ~ 2024.10.
목적: 포인트 충전/사용 시 발생하는 동시성 문제(데이터 불일치 및 경합 조건) 해결.
성과:
Mutex를 활용한 초기 락 방식에서 큐(Map+LinkedList 구조)로 개선하여 응답 속도 60% 단축 및 처리 효율성 향상.
동시성 통합 테스트를 작성하여 요청 순차 처리와 데이터 일관성 검증 완료.
확장성 있는 구조 설계로 유사 API에도 적용 가능.
주요 기술: NestJS, TypeScript, Mutex, Map+LinkedList, Jest (테스트 기반 검증).
포트폴리오
교육
SW 사관학교 정글
사설 교육 | KAIST 전산학과 비학위연수 과정
2022.09. ~ 2023.02. | 졸업
자격증
SQLD
SQL Developer | 한국데이터산업진흥원
2022.06.
자기소개
안녕하세요, 끊임없이 성장하고 문제를 해결하며 가치를 창출하는 개발자 노유나입니다. 이전 직무인 보육교사로 근무하며 아이들의 성장을 돕는 과정에서 스스로의 성장을 고민하게 되었고, 자연스럽게 끊임없이 배우고 도전하는 개발자의 길에 매력을 느끼게 되었습니다. 저는 변화하는 시대에 맞춰 기술을 통해 문제를 발견하고 해결하며 성장하는 과정에서 큰 즐거움과 보람을 느끼고 있습니다.
문제를 기술로 해결하는 것을 좋아합니다. 보육교사로 근무할 당시 경험한 문제를 해결하기 위해 웹사이트를 개발하고, 배포 및 운영까지 진행하며 사용자 피드백을 기반으로 지속적으로 개선해왔습니다. 또한 실시간으로 이슈를 대응해주는 업무를 맡아 하며, 빠른 시간내에 문제를 파악하고 해결하는 역량을 쌓아왔습니다.
효율적인 협업과 생산성을 중요하게 생각합니다. 팀의 생산성을 높이기 위해 PR 템플릿 도입, Git 브랜치 전략 적용, Swagger를 활용한 문서화, 배포 문서화 등을 제안하고 적용하여 프로젝트의 성과를 극대화한 경험이 있습니다. 또한 외부 세미나와 개인 지식 공유회를 통해 팀원들과 함께 성장하는 문화를 만들어왔습니다.
주도적으로 문제를 관찰하고 개선하는 것에 열정이 있습니다. 자율적으로 문제를 탐구하고 해결하는 과정에서 진정한 보람을 느끼며, 이를 통해 기술과 개인의 성장을 동시에 이루어내고자 노력하고 있습니다.