Skip to content
View Jaehwi-So's full-sized avatar

Block or report Jaehwi-So

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
Jaehwi-So/README.md

Jaehwi So

Jaehwi-So's github stats Solved.ac Profile

걸음마중인 병아리 개발자👶

  • 안정적이고 신뢰성 있는 서비스를 제작하면서 동시에 도전적인 정신을 바탕으로 어제보다 오늘의 코드가 나아지길 바라는 개발자입니다.
  • 백엔드 엔지니어의 업무에 가장 흥미를 가지고 있으며 주로 프로젝트에서 해당 파트를 맡아 시스템을 개발해 왔습니다.
  • 주로 개발을 담당하지는 않지만 프론트엔드와 머신러닝 영역에도 재미를 느끼고 있어 꾸준하게 관심을 가지고 있습니다.

전공

상명대학교(Sangmyung univ. Seoul)

  • 휴먼지능정보공학과(Human centered AI, 주전공)
  • 컴퓨터과학과 (Computer Science, 부전공)



개발 도구

Top Langs

Experience

지금까지의 프로젝트 과정 중 사용경험이 있는 도구들입니다.

Backend
Database
DevOps & Tools
Cloud
Frontend
Data Science

1. 프레임워크

백엔드 프레임워크를 선택할 때 저는 두 개의 후보군을 우선적으로 고려합니다. 상황 및 요구사항에 따라 유연하게 프레임워크를 결정합니다.

Spring (Java) : 복잡한 비즈니스 로직을 구현해야 하거나 대규모 시스템을 구축할 때 주로 사용합니다. 최근에는 Spring 진영에서 지원하는 강력한 모듈들에 대한 관심이 높아져 Spring Cloud나 Webflux도 개발에 적용해보려고 시도하고 있습니다.

Express (Node.js) : 빠른 개발이 필요한 경우, 혹은 비교적 가벼운 시스템을 구축할 때 주로 사용합니다. JS의 불안정성을 극복하기 위해서 Typescript도 함께 사용합니다. 명확히 구조화된 프레임워크인 NestJS를 공부하였으며 실제 프로젝트에 도입해보려 하고 있습니다.

• 이 외에도 필요 시 ASP.NET, Django 등 타 프레임워크를 사용하여 프로젝트에 참여한 적이 있습니다.

2. 데이터베이스

프로젝트의 핵심 로직에 따라서 다양한 유형의 데이터베이스를 채택합니다.

RDBMS : 가장 많이 사용하며 정형화된 모델링과 복잡한 연관 질의가 필요할 때 가장 적절합니다.
NoSQL : 유연하게 데이터를 모델링 해야 하는 경우 사용합니다.
In-memory DB : 캐싱, 사용자 세션 관리, 락 처리 등 임시적인 저장이지만 빠른 데이터 접근 속도가 필요한 경우 사용합니다.
Elasticsearch : 검색 엔진으로서의 활용합니다. ELK는 데이터 분석에도 유용하다고 들어 해당 기능도 공부해보고 싶습니다.

3. 서버

메시지 브로커 : 분산 시스템에서의 데이터 동기화나 이벤트 큐의 사용 목적으로 Kafka나 RabbitMQ 등을 프로젝트에 적용해 보았습니다.
클라우드 : 운영 및 배포 환경 구축에 필요한 강력한 도구들을 제공하는 클라우드 플랫폼의 다양한 모듈들에 관심이 있습니다.
컨테이너 기술 : 개발 환경을 구축하거나 배포를 할 때 Docker 컨테이너 기술은 필수적으로 사용하는 편입니다.
REST와 GraphQL : 주로 RESTful한 API를 개발하는 편이지만 클라이언트가 원하는 데이터를 질의해서 가져가는 GraphQL의 동향에도 주목하고 있습니다.

4. 기타

프론트엔드 : Angular 혹은 바닐라 JS를 사용해서 개발합니다. 프론트엔드 개발자분들만큼의 기술은 모르지만 관리자 페이지의 구축이나 개발한 API와의 연동을 테스트하기 위한 프로토타입 등을 제작할 수 있습니다.
데이터 사이언스 : 제 주전공은 기계학습과 데이터분석 등의 데이터과학을 중심적으로 다루는 컴퓨터공학입니다. 인공지능 시대에서 데이터 과학자들과 함께 일하기 위해서 학과 공부도 충실히 하고 있습니다. 특히 분산환경에서의 데이터 분석 도구인 Apache spark에 관련한 내용들은 매우 흥미로웠습니다.




Currently focused on this

요즘 흥미를 가지고 집중해서 공부하거나, 개발에 적용시켜보려고 하는 부분들입니다.
특히 안정적인 서비스와 좋은 퍼포먼스를 보이기 위한 마이크로서비스와 같은 분산 시스템 아키텍쳐와, 클라우드 기술에 관심을 가지고 있습니다.






개발 블로그

제가 작업하는 내용과 관련하여 개발 블로그를 운영하고 있습니다. 백엔드 개발에서 필요한 CRUD, 인증과 인가, 파일 처리, API 문서 작성, 클라우드 배포와 컨테이너 기술, 테스트, 시스템 아키텍쳐와 관련된 내용을 주로 작성합니다.
백엔드 개발 뿐 아니라 네트워크, 운영체제, 아키텍쳐 등의 컴퓨터과학 & 머신러닝과 데이터분석과 같은 Data Science 분야의 글도 틈틈이 작성하고 있습니다. 많이 방문해주시면 좋겠습니다.

Pinned Loading

  1. WISEFEE/SKLookie_SMU_Wisefee_Server WISEFEE/SKLookie_SMU_Wisefee_Server Public

    상명대학교 SK Lookie WISEFEE Core API

    Java 2 6

  2. TRUSTICKET/TRUSTICKET-CORE TRUSTICKET/TRUSTICKET-CORE Public

    암표 방지를 위한 대규모 트래픽을 고려한 티켓 예매 플랫폼

    Java

  3. graProj/didacto-api graProj/didacto-api Public

    DIDACTO Core API Server

    Java 1

  4. OnlineBrainstorm OnlineBrainstorm Public

    프로젝트 협업을 위한 브레인스토밍 플랫폼

    JavaScript

  5. WEB_Application_Pj_MatchUP WEB_Application_Pj_MatchUP Public

    스포츠 경기 매칭을 위한 소셜 네트워크 서비스

    HTML

  6. Proejct_BigDataAnalysis_AccidentRateRelatively Proejct_BigDataAnalysis_AccidentRateRelatively Public

    기준집단 대비 대상집단을 고려한 교통 사고다발구역의 시공간적 빅데이터 분석 프로젝트

    Jupyter Notebook