- 나석주
- Email : seokju.me@gmail.com
- Github : github.com/seokju-na
- 비바리퍼블리카
- Frontend Developer
- 기간 : 2019.2-
- 타운컴퍼니
- R&D 파트 개발팀
- 웹 프론트 엔지니어
- 기간 : 2017.9-2018.2, 2018.8-2018.12
- 두닷두
- 웹 프론트 엔지니어
- 기간 : 2016.3-2017.2
비바리퍼블리카, 2019.2-
BankService Silo에서 프론트엔드 개발을 하고 있습니다.
개인 프로젝트, 2017.5-
개발자를 위한 TIL(Today I Learned) 작성 툴로 Markdown과 코드를 혼합하여 작성할 수 있는 문서 편집기와 버전 관리 시스템의 연동이 큰 특징입니다. 2019년 1월 3일에 베타 버전을 배포하였으며 GitHub 저장소 주소는 seokju-na/geeks-diary 입니다.
- Electron 프레임워크 기반의 데스크탑 애플리케이션
- TypeScript 언어로 작성하였으며 Angular 프레임워크 사용
- Karma, Jasmine, Mocha를 이용하여 테스트 자동화
- 높은 퀄리티의 코드를 유지하기 위해 노력 - DI를 적극 활용, 단위 테스트 꼼꼼히 작성
- ngrx를 사용한 상태 관리
타운컴퍼니, 웹 프론트엔드 개발, 2017.8-2018.3, 2018.8-12
모든 단체를 위한 공동구매 플랫폼, 타운어스의 신규 플랫폼 개발에 웹 프론트엔드 부분을 맡아 프로젝트를 진행하였습니다. 모바일 사용자 유입이 많아 모바일 웹 개발을 위주로 진행하였으며, 전체적인 UI/UX 개선, 단체의류 커스터마이징 기능 강화, 조직 문화 개선 등의 작업을 하였습니다.
- TypeScript 언어로 작성하였으며 Angular 프레임워크 사용
- Karma, Jasmine을 이용하여 테스트 자동화
- RxJS 라이브러리를 이용하여 UI 인터랙션을 처리
- Jira로 이슈 트래킹 및 칸반 보드를 이용하여 애자일 개발 프로세스 진행
- Travis CI로 지속적 통합 유지
- 테스트 주도 개발 실천
- GitHub를 통해 매 Pull Request 마다 코드 리뷰 실천
- Sentry 모니터링으로 버그 트래킹
- GitFlow를 이용하여 배포 전략 맞춤
프리랜서, 웹 프론트엔드 개발, 2017.4-7
프리랜서로 주식회사 오마이트립에서 항공예약 시스템인 ohmytrip의 모바일 웹 개발을 담당하였습니다. 편도, 왕복, 다구간 항공 일정을 사용자가 달력에서 선택할 수 있는 등, 복잡한 UI를 구현하는 과정이 챌린지였습니다.
- JavaScript(ES6+) 언어로 작성하였으며 AngularJS 프레임워크 사용
- Azure DevOps(구 VSTS)로 이슈 트래킹
두닷두, 웹 프론트엔드 개발, 2016.3-2017.2
두닷두에서 호텔 관리 시스템의 B2B향 관리자용 웹 사이트를 혼자 맡아 개발하였습니다. 호텔 매니저들이 방의 상태를 확인하고 갱신하거나 스마트 워치로 등록한 이슈들을 실시간으로 트래킹 하는 기능을 개발하였습니다. 부 기능으로 호텔 용 모바일 기기에 등록가능한 디지털 사이니지를 편집하는 기능도 개발하였습니다.
- JavaScript(ES6+) 언어로 작성하였으며 AngularJS 프레임워크 사용
- Karma, Jasmine을 이용하여 테스트 자동화
- Selenium 드라이버를 이용하여 E2E 테스트 자동화
- 웹 소켓을 이용하여 실시간 이슈 트래킹 구현
- 디지털 사이니지 편집기 구현
- 수백 개의 항목을 AngularJS 컴파일러가 처리하는데 성능 문제가 발생하여, WebWorker에서 Virtual DOM으로 항목을 계산하고 DOM에 계산된 값을 패치하는 방식으로 문제 해결
- Travis CI로 지속적 통합 유지
- Gulp로 빌드, 배포 환경 구축
- 주로 사용하는 언어는 TypeScript, JavaScript 입니다.
- React 라이브러리를 능숙하게 사용하며, Redux 구조에 익숙합니다.
- Angular, AngularJS 프레임워크를 능숙하게 사용할 수 있습니다.
- JavaScript VM이 어떻게 작동하는지 이해하고, 브라우저의 동작 원리를 이해합니다.
- Less, Sass를 주로 사용합니다.
- Web API를 능숙하게 사용할 수 있고, 웹 접근성을 고려하여 UI를 개발할 수 있습니다.
- 어떤 방식의 UI 테스트가 쉽게 깨지지 않고 효율적일지 고민합니다.
- BEM 방법론을 선호합니다.
- RxJS 라이브러리를 능숙하게 다루며, 반응형 프로그래밍에 익숙합니다.
- 종속성 반전, 단일 책임 원칙, DRY 등 좋은 소프트웨어를 만들기 위한 원칙을 지키려고 노력합니다.
- MVP, MVC, MVVM, Flux 아키텍처를 이해합니다.
- 칸반을 이용한 애자일 개발 프로세스에 익숙합니다.
- 테스트 주도 개발을 실천합니다.
- 코드 리뷰가 습관화 되어 있습니다.
- Travis CI로 지속적 통합을 진행할 수 있습니다.
- 제 2회 고려대학교 해커톤: 고카톤 운영진 (2017.5-2017.8)
- 제 5회 대학생 연합 해커톤 UNITHON 운영진 (2017.5-2017.7)
- Naver D2SF 캠퍼스 파트너 1기 (2016.11-2017.3)
- 실전 SW 창업 연합 동아리 REAL 5기 운영진 (2016.11-2017.6)
- 소프트웨어 마에스트로 6기 연수생 (2015.7-2016.6)
- GitHub 프로필 : https://github.com/seokju-na
- MDN 프로필 : https://developer.mozilla.org/ko/profiles/seokju-na
- 발표
- Rush로 안전한 Monorepo 관리하기, 2019.11.21, 토스팀 사내 엔지니어링 데이
- 비동기를 우아하게 처리하기 위한 Observable, 2019.10.26, FEConf 2019
- Zone과 fakeAsync, 2019.8.1, 토스팀 사내 엔지니어링 데이
- 프론트엔드 개발 끝장내기 (feat. Angular), 2019.6.22, GDG Campus Korea - FRONT-ENDGAME: 여러분의 프런트엔드를 구할 어벤져스가 찾아옵니다
- RxJS로 비동기와 친해지기, 2019.2.22, 토스팀 사내 엔지니어링 데이
- Angular CDK로 높은 퀄리티의 UI 개발하기, 2018.7.22, Seoul.js 라이트닝 토크