안녕하세요! 풀스택 소프트웨어 개발자인 손혁진입니다.
저는 새로운 기술을 배우고 문제를 해결하는 것을 좋아합니다. 그리고 단순히
잘 동작하는 소프트웨어를 만드는 것을 넘어, 좋은 구조를 구축하고 코드의
품질을 유지하며 가장 효율적인 해결책을 찾는 것을 중요하게 생각합니다.
원격으로 일하는 것을 선호하지만, 사람들과 잘 협업하고 책임감이 강해서
20년 이상의 기간 동안 프로젝트를 성공적으로 수행해 왔습니다.
함께 일할 수 있는 좋은 프로젝트가 있다면 아래로 연락주세요.
병역특례로 근무했습니다.
관심을 가지고 공부하고 있는 기술들입니다.
콜 센터 시스템(Genesys, Matrix, ...)의 통화 내용을 텍스트로 변환해서 인공 지능으로 분석하는 서비스인 Sentroid를 개발하고 운영했습니다. 성능을 향상시키고 기존의 REST API를 GraphQL로 전환하는데 주력했습니다.
아이폰에서 통화 내용을 녹음하고 텍스트로 변환해주는 서비스인 Switch를 개발하고 운영했습니다. 서비스를 안정화하고 Monolithic 구조를 MSA로 전환하는데 주력했습니다.
파일가드2를 Easybox로 리브랜딩하면서 기술을 이전하고 CI/CD를 개선하는 프로젝트입니다.
EBS 초등 사이트의 동영상 강의를 제공하는 학습창 개발 프로젝트입니다.
7개 회사(BrainSoft, Naver, Kakao, MS, Amazon, IBM, Google)의 Speech-to-Text API의 성능을 비교하는 안드로이드 앱입니다. 일반적인 상황 또는 주변에 소음이 많은 상황에서 인식률을 비교합니다.
내부 서비스에서 로그인이 필요할 경우 쉽고 안전하게 기능을 추가할 수 있는 서비스입니다.
현재 운영중인 시스템의 성능, 보안, 개발 편의성을 높이기 위해 새로운 구조와 개선 방안을 제시했습니다.
운영중인 Newlearn 서비스에 기능을 개선하고, 관리자용 화면을 추가하고, SPA로 구현된 화면의 SEO를 개선하는 프로젝트입니다.
* SPA의 SEO를 개선하기 위해 검색엔진의 요청을 처리하는 서버를 따로 만들고, 그 서버에서 실제 서버의 내용을 가져오기 위해 Puppeteer를 사용했습니다.
Ionic으로 앱을 개발하는 절차를 표준화하고, 자주 사용되는 Angular 컴포넌트를 개발하고, Cordova Plugin을 개발하는 방법을 교육했습니다.
수학 콘텐츠를 홍보하고 가입자를 관리하는 사이트입니다.
미국의 교사들이 학습자료를 공유하고 서로 친분을 쌓을 수 있는 Newlearn.io 사이트를 개발했습니다.
기존에 운영되고 있던 프린트가드(출력물 보안 솔루션)를 리뉴얼하는 프로젝트입니다. 인증 서버를 분리해 SSO를 지원하고 모든 UI 및 코드를 재작성하고 배포 절차를 개선했습니다.
* 프린터로 출력한 내용을 이미지, PDF로 보관하는데 MinIO를 사용합니다.
Dropbox와 유사하지만 구축형이고 웹 기반인 파일 관리 솔루션의 두번째 버전입니다. 성능을 향상시키기 위해 다운로드와 파일 압축을 동시에, 그리고 업로드와 해시 계산을 동시에 처리합니다.
웹툰을 불법으로 공유하는 사이트를 찾아내고 단속하는 솔루션입니다. 사이트에 등록된 게시물의 제목, 내용, 첨부파일, 토렌트 파일을 수집하고 분석해서 불법 여부를 판별합니다. 사이트마다 화면의 구조, 내비게이션 방법 등의 다르기 때문에, 간단한 스크립트를 설계하고 사이트마다 다르게 작성해서 크롤링을 처리하도록 했습니다.
* ActiveX로 만들어진 다운로더를 사용하는 웹하드에서 첨부파일들 수집하기 위해 .NET/WinForms를 사용했습니다.
코딩을 하지 않고 블록을 조합해 사용자와 상호작용하는 동적인 콘텐츠를 만들 수 있는 도구를 개발하는 프로젝트입니다. 도구는 웹페이지에 임베딩할 수 있는 형태로 개발되었습니다.
Dropbox와 유사하지만 구축형이고 웹 기반인 파일 관리 솔루션입니다.
* MongoDB의 GridFS를 사용해서 파일 데이터를 관리합니다.
스마트폰과 블루투스로 연결되는 압력 감지 스마트 깔창으로부터 받은 데이터를 기록하고 분석해서 피드백을 제공하는 안드로이드 앱과 웹 사이트를 개발하는 프로젝트입니다.
* 안드로이드 개발에 Scala/scaloid를 사용했습니다.
다수의 보안 솔루션에서 발생하는 데이터를 자동으로 수집하고 통합해서 모니터링할 수 있으며, 데이터를 분석한 결과 위험이 감지되면 경고하는 시스템을 만드는 프로젝트입니다.
JavaScript, SVG, CSS로 만들어진 교육 콘텐츠에 시간이 지날수록 성능이 계속 하락하는 이슈가 있어서 원인을 분석하고 개선할 수 있는 방법을 제시하는 프로젝트입니다.
스마트폰과 블루투스로 연결되는 압력 감지 스마트 깔창으로부터 받은 데이터를 기록하고 조회하는 모바일 앱과 웹 사이트를 개발하는 프로젝트입니다. 처음에는 안드로이드 앱을 개발하다가 iOS도 지원하기 위해 하이브리드 앱으로 전환했습니다.
* 안드로이드 개발에 Scala/scaloid를 사용했습니다.
Cornerstone Framework를 최적화하고, 문서 사이트 개선, 테마 추가, 차트 컴포넌트 추가, Framework 관리 CLI를 개발하는 프로젝트입니다.
HTML5 기술을 사용하여 모바일/데스크탑 웹 앱을 개발할 수 있는 프레임워크를 만드는 프로젝트입니다. 프레임워크 사용법을 설명하는 문서 사이트와 프레임워크를 활용한 예제들도 만들었습니다.
온라인으로 설문을 진행하고 결과를 실시간으로 집계해서 보여주는 서비스입니다.
영어 어휘를 학습할 수 있는 사이트를 개발하는 프로젝트입니다.
소프트웨어를 구매할 수 있는 사이트를 개발하는 프로젝트입니다.
복합기에 탑재되는 소프트웨어를 개발하여 인증된 사용자만 복합기를 사용할 수 있도록 제한하고 복합기 사용 기록을 남기고 조회할 수 있게 하는 프로젝트입니다.
LiMo (Linux Mobile) 플랫폼의 앱스토어를 개발하는 프로젝트입니다.
개인에게 맞는 의류, 액세서리들을 추천해 주는 검색 시스템입니다. 여러 쇼핑몰 사이트들의 의류, 액세서리들을 자동으로 크롤링한 후 알고리즘으로 유사도와 어울림 정도를 계산합니다.
경북대학교의 직원용 업무 프로그램을 개발하는 프로젝트입니다. 자주 사용되는 기능/패턴을 공통 컴포넌트로 개발하고 사용법을 교육했습니다.
대구광역시의 교육정보를 모아서 제공하는 사이트를 개발하는 프로젝트입니다.
Zigbee를 내장한 조명, 도어락, 가스밸브, 모션센서를 월패드나 휴대폰으로 모니터링하고 제어하는 프로젝트입니다.
* Windows CE 기반의 월패드에 탑재되는 프로그램을 .NET/WinForms 로 만들었습니다.
영남대학교의 직원용 업무 프로그램을 개발하는 프로젝트입니다.
채용 공고를 내고 지원자를 관리하는 사이트입니다.
프로젝트의 내용, 일정, 이슈, 산출물을 관리하는 사이트입니다.
가톨릭 상지대학교의 직원용 업무 프로그램을 개발하는 프로젝트입니다.
CRC(Carrier Requirements Compliance) 시스템은 휴대폰을 개발하는 상황에서 이동통신사와 협업하기 위한 도구입니다.
경성대학교의 학생을 관리하는 웹 사이트입니다.
삼성전자가 협력사들과 진행하는 프로젝트들의 일정, 이슈, 산출물 등을 관리하는 사이트입니다.
MIMS 2.0 Reference System은 의약품을 관리하는 프로그램입니다.
서울 애니메이션 센터의 홈페이지와 관리자용 화면을 개발하는 프로젝트입니다.
Pacific Best Group의 홈페이지를 개발하는 프로젝트입니다. 환율 정보를 주기적으로 크롤링해서 홈페이지에 표시하는 기능이 있습니다.
여러 사이트로부터 정보를 수집해서 통합하는 방안을 설계하는 프로젝트입니다.
교육정보를 제공하는 사이트를 리뉴얼하는 프로젝트입니다.
대구광역시 교육청의 뉴스를 제공하는 사이트를 개발하는 프로젝트입니다. 첫 화면의 성능을 향상시키기 위해 Static Site Generator를 개발했습니다.
게시판을 개발하는 프로젝트입니다.
데이터베이스의 데이터를 다른 데이터베이스로 이관하는 프로젝트입니다.
Dismall(대구백화점의 온라인 쇼핑몰)의 거래처를 관리하는 직원용 웹 사이트입니다.
구미1대학교의 온라인 원서 접수 사이트를 개발하는 프로젝트입니다.
대학교 직원의 업무 중 하나인 ‘연구 관리’를 재사용 가능한 컴포넌트로 개발하는 프로젝트입니다.
대학교 입시 원서를 온라인으로 받고 과금할 수 있는 시스템입니다.
회사내의 텍스트/문서 정보들을 통합해서 관리하는 Wiki 스타일의 사이트입니다.
대구은행과 법원이 메시지를 주고 받을 때 프로토콜에 맞도록 변환해 주는 시스템입니다.
여러 프로젝트에서 반복적으로 사용되는 패턴과 유틸리티 코드 등을 모아서 만든 사내 표준 Java 프레임워크입니다.
직원들끼리 사용하기 위한 커뮤니티 사이트입니다. Long polling 방식으로 웹 채팅을 구현했습니다.
애니콜 휴대폰에 탑재된 웹 브라우저를 다른 모델로 포팅하는 프로젝트입니다.
금오공과대학교의 직원용 업무 프로그램을 개발하는 프로젝트입니다.
경북도청의 직원용 업무 프로그램을 개발하는 프로젝트입니다.
엔티티 관계도(ERD)를 그리고 테이블 생성 스크립트를 만들어내기 위한 도구입니다. 어느 정도 완성되면 공개할 예정입니다.
실제로 집의 기기들을 원격으로 제어하기 위해서 만들었습니다.