채용공고 올리기

오기선님을 응원해보세요!

이직/구직 중이에요

미리보기

기본 정보

이름
오기선
직업
이메일
pakox123@gmail.com
간단 소개

안녕하세요, 프론트엔드 개발자 오기선입니다. 기술은 끊임없이 변화하지만, 그 중심에는 언제나 사용자가 있다고 생각합니다. 저는 AI와 블록체인 같은 최신 기술에 관심을 갖고 학습하며, 이를 실제 프로젝트(블록체인 기반 부동산 앱, AI 일본어 회화 앱)에 적용해보면서 경험을 쌓아가고 있습니다. 현재는 Next.js의 앱 라우터와 페이지 라우터를 학습하며, 이를 활용한 프로젝트를 진행하고 있습니다. 변화하는 환경 속에서도 본질을 놓치지 않고, 사용자에게 더 나은 경험을 제공하는 프론트엔드 개발자로 성장해 나가고자 합니다.

포트폴리오

URL

link

포트폴리오

URL 링크
link

개인 깃허브 링크

깃허브
link

CS 스터디

노션

프로젝트

프로젝트명

에버링(Evering)

소속/기관명

코드잇

프로젝트 기간

2025.02. ~ 진행 중

프로젝트 내용

배포링크 : https://ever-ring-prod.vercel.app/

역활 : 프론트엔드, 모임리스트, 찜하기구현

넥스트 앱라우터를 활용해 모임리스트 개발

  • TanStack Query Infinite Query 적용 → 무한 스크롤 기능으로 리스트를 자연스럽게 로드

  • SSR 적용 → SEO 최적화 및 FCP 향상

  • useParams 활용 → 사용자의 필터링 정보 유지 (새로고침 시에도 필터값 보존)

찜하기 페이지 구현

Zustand Persist 적용 → 찜한 모임 데이터를 상태 관리하고, 새로고침 후에도 유지

프로젝트명

토키도키

소속/기관명

삼성청년소프트웨어아카데미 - 뉴스와 AI 챗봇 대화를 기반한 일본어 회화 웹/앱

프로젝트 기간

2024.03. ~ 2024.04.

프로젝트 내용

삼성청년sw아카데미 특화 우수 프로젝트 선정

역활 : 프론트엔드, Web Stomp-Client을 이용한 STT-TTS 챗봇 구현 담당

실시간 AI 챗봇 채팅 (GPT api 연동)

  • WebSocket with STOMP

    • WebSocket 연결을 통해 서버와 클라이언트 간의 지속적이고 실시간의 양방향 통신 채널을 구축

    • STOMP 프로토콜을 사용하여 이러한 통신을 구조화하고 메시지 교환을 명확하게 관리

회화 채팅 서비스 (stt, tts 연결)

  • AWS POLLY 사용한 TTS 기능 구현

    • Amazon Polly TTS(Text-to-Speech)를 통해 정확한 일본어 구어체 제공

  • React-Speech-Recognition STT 기능 구현

    • STT(Speech-to-Text)를 구현하여 사용자의 음성을 텍스트로 변환 후 쉐도잉 평가 기능과 AI와의 회화 기능 제공

Chart.js 기반 시각화를 통한 회화 채팅 리포트

  • Chart.js 활용하여 채팅 리포트 결과 시각적으로 강조하여 제공(어휘력, 문법, 단어, 문맥이해도, 유창성)

  • 전체 대화 흐름을 GPT 프롬프트 엔지니어링 통하여 적절한 단어 선택과 전채 피드백 제공

소셜 로그인 연동

  • Google, Naver, Kakao 등 다양한 소셜 로그인 옵션 제공

  • Cookie 를 통한 로그인 상태관리

  • Token 만료 여부 자동 검증

반응형 웹 및 앱 환경

  • PWA 활용한 반응형 제작 웹과 모바일 환경 지원

프로젝트명

출퇴근하는 운전자를 위한 대화형 금융 뉴스제공 챗봇

소속/기관명

KB국민은행AI CHALLENGE

프로젝트 기간

2024.07. ~ 2024.08.

프로젝트 내용

담당 역활 : 팀리더, 프론트엔드, LLM에 RAG 결합 담당사용 기술 : React, Elasticsearch

RAG 기반 챗봇으로 답변 정확도 30% 향상

  • 크롤링한 뉴스데이터 모인 DB 생성

  • 챗봇 답변 시 Elasticsearch로 DB 탐색한 데이터를 통해 정확한 답변 제공

  • 할루시네이션 방지

실시간 음성인식 대화처리

  • useEffect의 의존성 배열과 setTimeout를 활용한 음성 인식 및 대화 상태 관리 자연스러운 응답 제공

프로젝트명

블록홈즈 - 블록체인 기술을 활용한 전세사기 방지 부동산 거래 dapp

소속/기관명

삼성청년소프트웨어아카데미

프로젝트 기간

2024.04. ~ 2024.05.

프로젝트 내용

삼성청년sw아카데미 자율 우수 프로젝트 선정

프로젝트역활 : 프론트엔드, 블록체인 스마트 컨트랙트 배포 코드와 부동산 허위매물 리포트 부분 구현 담당

사용자 배포 임대차 계약서

  • Ethers.js를 활용 클라이언트 측에서 블록체인 네트워크와 직접 통신하여, 스마트 컨트랙트 배포 및 임대차 계약 거래를 처리하는 코드 작성

  • 계약서 서명 , 송금 부분을 Solidity로 써진 abi 명세서를 기반하여 작성

  • DID 정보를 해시 처리하여 블록체인에 기록

부동산 안전 매물레포트

  • 블록체인에 기록된 거래 트랜잭션 데이터를 기반으로 매물의 위험 요소를 판단

    • (매물 전세금 변화 추이, 매물 적정 전세금 안내, 매물 위험 요소 판단)

    • 사용자 친화적인 튜토리얼 제공

      • 초기 사용자 경험을 고려한 react-joyride 라이브러리 도입

경력

회사명

주식회사솔트룩스이노베이션

직급 | 부서 | 근무 유형

주임 | 지식큐레이션

근무 기간

2021.11. ~ 2023.01. (1년 3개월)

담당 업무

AIaaS 기반 NLP 챗봇 솔루션(Talkbot Studio)을 활용하여 국가기관 대상 고객 서비스 자동화 프로젝트에 기여
성과: 국민콜 101, 자동차배출가스365, 국토교통부 민원상담, 알림서비스 챗봇 출시

  • 역할:

    • 국가기관 사무관 인터뷰를 통해 챗봇 기획 및 방향성 설정

    • 챗봇 운영, 학습, 검수, 출시 후 피드백 반영까지 프로젝트 전반을 주도

    • 고객(사무관)의 요구 사항을 명확히 수렴하여 챗봇 개발툴을 활용한 최적화 진행

    • 출시 후 발생한 에러 및 개선 사항을 신속히 반영하여 사용자 경험 향상

기술 스택

기술 스택

JavaScript, TypeScript, Next.js, React, react-query, zustand, Python, SQLD, Git, JIRA, Figma

교육

소속/기관명

코드잇-프론트엔드 심화 부트캠프

종류 | 전공

사설 교육 | IT

재학 기간 | 재학 상태

2025.01. ~ 2025.03. | 졸업

소속/기관명

삼성청년소프트웨어아카데미

종류 | 전공

사설 교육 | IT

재학 기간 | 재학 상태

2023.07. ~ 2024.06. | 졸업

소속/기관명

조선대학교

종류 | 전공

대학교(학사) | 신소재공학과

재학 기간 | 재학 상태

2016.02. ~ 2022.02. | 졸업

자기소개

자기소개

왜 개발자가 되기로 결심했는가

[챗봇 개발을 위한 SSAFY 도전]
회사에서 문답형 챗봇을 개발해 왔습니다.  GPT 등장에 저는 충격을 받았고, 저도 동적이게 대화하며, 사용자에게  좋은 서비스를 제공하는 기술력 있는 챗봇 개발을 목표로 잡았습니다. 그러나 비전공자로서 제대로된 개발 경험이 없어, it 전문성을 기르지 않으면 목표를 달성이 어렵다고 생각했습니다. 그래서 it 전문가로 성장하고자 삼성소프트웨어아카데미(이하 SSAFY)에 지원하였습니다.

SSAFY에서는 프론트엔드 기술, 정보 탐색 능력, 공식 문서 활용 능력을 익히기 위해 최선을 다했습니다. 학습량이 많아 포기를 고민하기도 했지만, 스스로 선택한 길이기에 끝까지 해내기로 다짐했습니다. 하브루타 스터디를 조직해 팀원들과 매일 저녁 2시간 배운 내용을 서로 설명하며 학습했고, 점차 자신감을 얻게 되었습니다.

2학기 프로젝트에서 일본어 회화 챗봇을 개발하며, AWS Polly로 TTS 기능을 구현하고 React Speech API로 STT를 적용했습니다. 또한 레벤슈타인 거리 알고리즘을 활용해 쉐도잉 기능을 추가하여 사용자 학습 효과를 높였습니다. 그 결과, 우수 프로젝트로 선정되며 목표로 했던 기술력 있는 챗봇을 완성할 수 있었습니다.

이 경험을 통해 IT 전문가로 성장했고, 최신 기술에 도전하고 끈질기게 학습하는 태도를 갖게 되었습니다. 입사 후에도 포기하지 않고 계속 도전하며 발전하겠습니다.

스스로 문제점을 인식하고 해결한 경험

[사용자 경험을 고려한 필터 상태 유지 기능 개선]

Next.js 기반 모임 찾기 프로젝트에서, 저는 리스트 페이지를 맡아 지역, 날짜, 정렬순, 모임 종류 등 다양한 필터 기능을 구현했습니다. 기능은 잘 동작했지만, 직접 사용해보면서 불편한 점이 느껴졌습니다.

모임을 둘러보다가 상세 페이지에 들어갔다가 다시 뒤로 가기를 누르면, 방금 설정한 정렬 기준이 초기화되는 현상이 반복됐고, 새로고침하거나 다른 페이지를 갔다 돌아와도 마찬가지로 필터가 모두 리셋되는 흐름이었습니다. 한 번 정렬한 기준이 계속 유지되길 기대하는 사용자 입장에선 번거로운 경험이었습니다.

이 부분을 개선하기 위해 URL 쿼리스트링으로 필터 상태를 유지하는 방식으로 리팩토링을 진행했습니다. useSearchParams를 사용해 필터 조건을 URL에 반영하고, 이를 커스텀 훅으로 분리해 전체 필터 상태를 일관되게 관리하도록 했습니다. 이 덕분에 뒤로 가기, 새로고침, 페이지 이동 후 복귀 시에도 필터가 그대로 유지되는 구조를 완성할 수 있었습니다.

이번 경험을 통해, 기능을 단순히 구현하는 것을 넘어서 실제 사용자의 흐름과 기대를 고려한 인터랙션 설계의 중요성을 느꼈고, 동시에 상태를 URL과 동기화하며 유지하는 기법에 대해 깊이 이해하게 되었습니다.

자격증

자격증명

SQLD

점수 | 발급기관

취득 | 한국데이터산업진흥원

취득연월

2024.09.

댓글