Skip to content
YeonJuAn GitHub

연주안

FrontEnd Developer

안녕하세요! 저는 프론트엔드 개발자로 일하고 있습니다. 주로 TypeScript,React로 프론트엔드를 개발하며 Node.Js, NestJS 를 사용해 백엔드 개발을 하기도 합니다. AST를 활용한 오픈소스에 관심이 많아 종종 기여하고 있습니다.

경력

  • LINE+UIT | 2021.09 ~ now
    • - NFT 플랫폼 웹앱 빌더 서비스 프론트 개발
    • - 웹앱 빌더 서비스 프론트/ 백엔드 개발
    • - Static Site Build 플랫폼 백엔드 개발
    • - Headless CMS 백엔드 개발
  • Kakao FE 플랫폼 팀 | 2019.01 ~ 2021.09
    • - 사내 코딩 스타일 가이드 제작
    • - 사내 Private NPM Registry 백엔드 개발
    • - 웹 성능 측정 플랫폼 프론트 / 벡엔드 / JS SDK 개발
    • - 프론트엔드 웹 성능 가이드 제작
    • - 웹 서비스 트래킹 JS SDK 개발
    • - 카카오톡 Covid 19 백신 QR 체크인 프론트 개발
    • - 카카오 기술 블로그 포스팅: ESLint 조금 더 잘 활용하기, 주니어 FE 개발자 오픈소스 성장기
  • KT 소프트웨어 개발단 | 2018.07 ~ 2018.08
    • - 웹 지도 서비스 프론트 과제. (인턴)
  • 중앙일보 2019.01 ~ 2021.09
    • - 특집 기사 웹 컨텐츠 프론트 개발. (계약직)

오픈소스 컨트리뷰션

종종 관심 있는 오픈소스에 기여하곤 합니다. 주로 AST를 활용한 툴에 기여합니다. 아래는 지금까지 기여한 오픈소스 프로젝트 컨트리뷰션 기록입니다! 그래프를 클릭하면 기여한 Pull Request 목록을 확인하실 수 있습니다.

오픈소스 프로젝트

가끔씩 떠오르는 아이디어를 구현해서 오픈소스 프로젝트로 공유합니다. 유용한 프로젝트라고 생각되시면 github star 를 통해 응원해 주세요 ⭐.

  • HTML 코드를 정적 분석할 수 있도록 하는 ESLint 플러그인 프로젝트입니다. 업무 중에 HTML을 직접 작성할 일이 생겼는데, ESLint로도 HTML Linting을 제공한다면 편리하겠다는 생각이 들어 개발하게 되었습니다. 프로젝트가 궁금하시다면 https://html-eslint.org 을 방문해 보세요!.

  • HTML 코드를 파싱해서 ESTree 와 유사한 형태의 AST로 파싱하는 프로젝트 입니다. html-eslint 프로젝트를 위해 ESTree Spec 과 호환되는 AST가 필요해서 개발하게 되었습니다. hyntax를 fork 한 뒤 코드 베이스를 TypeScript로 변환하면서 ESTree Spec과 호환되도록 만들었습니다.

  • git diff 결과물을 분석해서 AST로 파싱하는 프로젝트 입니다. 레포지토리의 커밋 기록을 통해 다양한 리포트를 만드는 프로젝트를 만들어 보고 싶었고 그 첫 발걸음으로 만든 프로젝트 입니다. 최초 계획한 프로젝트는 아직 시작하지 못했지만 npm 에 패키지를 올린 뒤로 microsoft/PR-Metrics, epicweb-dev/kcdshop, sourcegraph/cody와 같은 프로젝트들에서 이 패키지를 git diff 를 분석하는데 활용하고 있습니다.

기타 활동

  • ESLint - Committer

    2020년 부터 약 2년간 ESLint 팀에서 커미터로 활동을 했습니다. 기능 개발, 버그 수정, 코드 리뷰, 이슈 관리를 하며 프로젝트 메인테이닝에 참여했습니다.
    개발 1~2년차에 처음으로 깊게 참여한 오픈소스 프로젝트였는데, 프로젝트에 기여하고 코드 리뷰를 받으면서 많은 개발 지식을 습득할 수 있었습니다. 기여를 인정받아 소액의 보상을 받기도 하는 특별한 경험도 할 수 있었습니다. 💸
    이후에는 Linter 프로젝트와 TypeScript에 관심이 생겨 현재는 typescript-eslint 프로젝트에 기여를 하고 있습니다. 여기서 ESLint에 기여한 자세한 내용을 확인하실 수 있습니다.

  • Rome - Core Contributor

    2021년, Rome 팀에서 코어 컨트리뷰터로 활동을 했습니다. Rome 은 Linter, Formatter, Bundler를 한 프로젝트에서 모두 구현하는 프로젝트였습니다. 저는 CSS를 파싱하는 파서 개발에 주로 참여했습니다. 여기서 제가 기여한 내용을 확인하실 수 있습니다.
    개발에 참여하면서 CSS 문법 스펙을 확인해 가며 파서를 개발하는 특별한 경험을 할 수 있었습니다. 성능 문제로 프로젝트가 Rust 기반으로 변경되면서 더 이상 참여하지는 않게 되었습니다. Rome 프로젝트는 현재 종료되었지만 birome에서 fork 되어 개발되고 있습니다.

  • 2020 오픈소스 컨트리뷰톤 멘토링

    오픈소스 컨트리뷰톤은 정보통신 산업 진흥원에서 주관하는 행사로, 오픈소스에 익숙하지 않은 개발자들을 대상으로 한 멘토링 행사입니다. 멘토로 참여해 ESLint, TypeScript-ESLint 프로젝트에 기여할 수 있도록 멘토링을 진행했습니다.
    대부분의 멘티분들이 열심히 참여해 주셔서 1회 이상 오픈소스에 기여하는 좋은 성과를 이룰 수 있었습니다 🎉. 자세한 활동이 궁금하시다면 멘티분들의 후기를 확인해 보세요!

  • JS 13k Games 2019 Competition

    JS 13k Games는 모든 리소스 크기의 합을 13kb이내로 제한해서 웹 게임을 만드는 대회입니다. 13kb 이내로 만들어야 한다는 제약이 재밌어 보여서 참여하게 되었고 7등을 수상했습니다 🎉.
    2019년의 주제는 "Back" 이었는데, 저는 '뒤에서 적을 공격'해야 클리어 가능한 Back Attacker라는 게임을 제출했습니다. 게임이 궁금하시다면 JS 13k Games - Back Attacker에서 직접 플레이 해보실 수 있습니다! (모바일 사이즈 스크린은 지원하지 않습니다)

  • Dev Blog

    가끔씩 개발과 관련된 블로그 포스팅을 하고 있습니다. 최근까지는 Korean FE Article Team에서 활동하면서 흥미로운 외국 개발 블로그 글을 번역해서 포스팅 했습니다.
    직접 작성한 글중 가장 반응이 좋았던 글은 nullundefined에 대해 비교한 return null vs undefined 입니다. naver/fe-news 2020-08에서 포스팅이 소개되기도 하는 보람찬 경험을 할 수 있었습니다. 이곳에서 다른 포스팅들도 확인해 보세요.

교육

  • 한양대학교 컴퓨터 공학 학사