미리보기
기본 정보
다양한 개발 경험과 실무에서의 문제 해결 능력을 바탕으로 새로운 도전을 통해 성장하는 개발자 김유림입니다.
자기소개
백엔드/서버개발 분야에서 근무한 경력을 가지고 있습니다. 주요 업무로는 EDR 2.0을 개발하고 B2B 고객사에 맞는 기능을 구현하였습니다.
안랩에서 근무하면서 EDR 개발팀에 속하여 다양한 기술을 활용하여 프로젝트를 수행하였고, 다른 개발자들과 협업하여 기능을 구현하였습니다.
다양한 백엔드 기술과 프로젝트 경험을 보유하고 있습니다. 팀원들과의 원활한 협업 능력과 문제해결 능력으로 업무에 성실히 임할 것을 약속드립니다.
교육
고려사이버대학교
대학교(학사) | 소프트웨어학과
2020.03. ~ 2022.02.
졸업
Orange Coast College
대학교(전문학사) | Computer Information System
2015.03. ~ 2018.05.
졸업
기술 스택
경력
주식회사 안랩
연구원 • EDR 개발팀
프로젝트: EDR 2.0
2021. 10 ~ 2024. 10
프로젝트 목적: 위협을 탐지하는 것은 넘어 체계적으로 분류하여 사용자가 위협을 직관적으로 파악할 수 있도록 해주고 위협을 이해할 수 있도록 풍부한 콘텐츠를 제공하기 위한 목적으로 만들어 졌습니다. 또한 탐지한 위협에 대해 마이터 어택 프레임 워크를 기반으로 위협 정보, 유입 경로, 주요 행위, 연관 관계, 위험도, 링크 등에 대한 상세한 분석 내용을 제공합니다.
기술스택: Java 11, Spring Boot, Maven, Mongo, PostgreSQL, Kafka, Zookeeper, Redis, Opensearch
Syslog 연동
사용사로부터 Syslog 서버 정보를 입력받고 watch dog으로 서버 상태 조회 후 UDP/TCP(SSL) 프로토콜 통신으로 수집된 로그를 사용자의 Syslog Server에 전송합니다. 실패시 kafka에 적재하여 일정 시간 후 다시 전송합니다.
# 성과
Syslog 전송 개발 시 분당 2만건 이상의 로그가 몰릴 것을 예상하였고 스레드풀을 구성하여 동시다발적인 데이터 요청에 대비하고 성능 모니터링을 통해 발견한 메모리 누수를 확인하여 메모리 사용을 최적화하고 GC 작업을 효율적으로 관리하여 시스템 성능에 영향을 미치지 않도록 조치하였습니다. 이로써 사용자는 로그를 원하는 Syslog 서버로 쉽게 전송할 수 있게 되었고, Watch Dog를 통해 서버 상태를 모니터링할 수 있게 되었습니다.GeoIP 연동
Maxmind에서 제공한 GeoIp.csv 파일을 Java로 Import 하는 작업을 하였습니다. Import시 start_ip, end_ip로 분리하여 ip조회를 쉽게 만들었고 스레드를 분리하여 서비스가 시작할때 파일을 읽어 Import하도록 개발하였습니다. 수집된 로그 중 Network에 관련된 로그가 있다면 IP에 대한 GeoIP를 제공하여 화면상에 국기로 표시할 수 있도록 하였습니다.
# 성과
GeoIP를 가져오는 과정에서 조회시 느려지는 병목 현상이 있었습니다. 해결책으로 GeoIP 정보를 검색하는 데 사용되는 필드에 인덱스를 생성하여 검색 속도를 대폭 개선하였고 JOIN 및 서브쿼리를 최소화하고 자주 요청되는 GeoIP 정보를 캐싱하여 데이터베이스 부하를 줄이고 응답 시간을 개선하여 조회 시간을 80퍼센트 이상 단축할 수 있었습니다.PostgreSQL Vacuum
사용자로부터 Vacuum 관련한 정보를 등록받아서 지정된 날짜 혹은 시간에 스케쥴이 돌아 Full Vacuum 혹은 Basic Vacuum이 작동할 수 있도록 개발하였습니다. 사용자가 Vacuum 결과를 로그로 볼 수 있게 하였습니다.
# 성과
데이터베이스 관리를 자동화하여 사용자의 관리 부담을 줄였고, 로그를 통해 결과를 확인할 수 있게 했습니다.쿼리 리팩토링, 프로시저 분석 및 Mapper & 비즈니스 로직으로 전환
에러 추적이 되지 않는 프로시저에서 Mybatis로 전환하는 작업을 담당하였습니다. 기존 프로시저들을 분석하여 성능면에 더 안정적으로 동작 할 수 있게 변경하였습니다. 불필요하다고 생각되는 Join문들을 줄이고 어플리케이션단에서 해결할 수 있도록 변경하였습니다.
# 성과
쿼리 리팩토링과 프로시저 분석은 데이터베이스 성능을 향상시켜 응답 시간을 줄였고, 프로시저 관리를 더 효율적으로 만들었습니다.악성 로그 분석
V3 혹은 위협으로 탐지된 로그들이 서버로 들어오면 해당 로그를 다이어그램으로 보여줄 수 있게 분석 및 가공 하였습니다. 해당 로
하나의 악성 로그에서 일반적인 행위로그나 위협로그로 분리하여 사용자가 쉽게 인지할 수 있도록 하였습니다.
# 성과
로그 분석을 통해 보안 및 위협 관련 이벤트를 시각적으로 표시하여 관리자가 빠르게 대응할 수 있게 했습니다.사용자 정의 쿼리 보고서
OpenStack(nosql) 저장되어있는 데이터를 이용하여 사용자가 SQL 쿼리로 직접 데이터를 조회하여 보고서를 만들 수 있도록 제공하였습니다. OpenStack에서 제공하는 쿼리는 사용자가 사용하기 어려워 SQL문으로 제공하게 되었습니다.
# 성과
SQL Injection을 대비하여 쿼리문이 들어올때 쿼리를 검사하여 select문 이외에는 사용할 수 없도록 하였습니다.
(3년 1개월 | 정규직)
(주)지어소프트
사원 • 엔터프라이즈솔루션
프로젝트: eDrive
2020-06-01 ~ 2021-03-01
고객사: 산업통산 자원부
개발한 기능: 윈도우 메신저연동, 웹 클라이언트 파일 업로드 및 암호화, 프론트 화
기술스택: :Java, Spring, JS, HTML 5, CSS, Ajax, Jquery Mybatis,젠킨스, Spring Boot, Git
상세 내용:
윈도우 탐색기 기반으로 조직 단위의 협업 및 문서 검색의 효율성과 생산성 향상을 위한 스마트 문서 중앙화 솔루션입니다. 정부 기관에서는 내부망에서 파일을 관리하는데 부서간의 파일 이동을 쉽게 하지 위하여 만들어 졌습니다..
(1년 4개월 | 정규직)
포트폴리오
첨부파일