PortFolio

김환수·2024년 5월 30일

소개

안녕하세요! 개발자국(Doggy-Footprint🐾)으로 활동하는 김환수입니다.

지금까지 공부하고, 일하는 과정에서 남은 흔적(개발자국)을 바탕으로 제가 어떤 개발자인지 파악할 수 있도록 정리했습니다. 이 페이지에서 제가 어떻게 일하고, 어떻게 성장하는 개발자인지 잘 보여줄 수 있으면 좋겠습니다!🐾

한줄 소개

마법은 없다🐾

이유 없이 되는 건 없다고 생각합니다. 제가 작성하는 코드와 프로그램, 그리고 문서에 책임을 지고 자신있게 설명할 수 있도록 항상 기초를 향해 깊게, 더 깊게 파고들며 공부합니다.

Tech Stack

Skilled🫰

Programming Language

아래 개발 언어들을 높은 수준으로 이해하고 있습니다. 해당 언어로 능숙하게 개발하는 것은 물론, 구조적인 결함과 문제점, 그리고 장점을 설명할 수 있습니다.

  • Java
  • Python
  • C

Tools & Frameworks

아래 개발 도구들을 오랜 기간 사용했고, 각각의 장단점에 대해 이해하고 있습니다.

BE

  • flask

DB

  • MySQL
  • MariaDB
  • SQLAlchemy
  • JPA

FE

  • HTML5
  • CSS & Bootstrap
  • Javascript & Jquery

Linux

지난 업무 과정에서 linux OS에 대해 자세히 공부할 수 있었습니다. 일반적인 linux 지식 외에 소개할만한 부분은 다음과 같습니다.

  • Lock & Suspend 등 시스템 지정 동작을 수행하는 프로그램을 분석하고 만들었습니다.
  • Gooroom OS 설치 및 부팅 과정을 분석하여 disk encryption을 제공하도록 수정하였습니다.
  • 흔히 사용하는 thread, storage device (block device), process 등을 linux kernel에서 어떻게 정의하는지 이해하고, 나아가 이를 사용하는 기술의 원리를 설명할 수 있습니다.

Interest

Reverse Engineering(Dynamic Debugging)

다음과 같은 도구를 사용할 수 있습니다. 한줄 소개에서 말한 것 처럼 저는 개발에 있어 마법은 없다라고 생각합니다. 그렇기 때문에 프로그램의 실행 정보를 직접 확인할 수 있는 도구를 자주 사용합니다.

  • Ghidra (for native programs)
  • FRIDA (for Java)

보안

지난 업무를 통해 암호학의 기본을 익혔으며, 특히 TLS에 대해 깊게 공부할 수 있었습니다.

PortFolio🐾

Trouble Shooting History

원인 파악에 집요한 편입니다.

검색 및 GPT 확인 결과를 기초로 하되, 신뢰할 수 있는 문서를 꼭 체크합니다.


이런 것들에 관심을 가지고 있습니다.

Obsidian Plugin 개발
  • 사용자의 입력을 파싱하여 연결할 수 있는 note 제안
  • 사용자 지정 폴더를 검색하여 TODO, reminder, habbit 등을 모아서 보여주기
  • TDD를 위한 business logic의 분리
Lucky Patcher 원리 분석
  • 옛날 몇몇 어플리케이션에서 결제 없이 결제된 것 처럼 해킹할 수 있던 툴입니다. 지난 업무를 통해 Android 13의 보안 채계에 대해 배웠기에 어떻게 막히게 되었는지 확인하려 합니다.
Data Structure & Algorithm
최신 트렌드
TED 번역

기술 스택을 확장하는 중입니다.

Git-Pro
Docker
SpringBoot
Jenkins

이런 책들을 관심있게 읽고 있습니다.

Gang of Four
가상 면접 사례로 배우는 대규모 시스템 설계 기초 1, 2
profile
ㅇㅋㅇㅋ

0개의 댓글