마찰력 없는 인앱경험을 발견하면 정말 좋아합니다. 그런 제품을 만들기 위해, 일을 할 때 본인만의 해석과 철학을 팀원과 먼저 공유합니다. 초기 제안 보다 더 나은 해결 방법을 제안합니다. 제안이 실행 단계로 전환됐을 때 지치지 않고 완수하는 사람입니다. 문제를 해결해나가는 집요함이 있습니다.
package p2p.introduction.domain;
@Builder
class Member {
String name;
String job;
String[] developmentFields;
String[] languages;
String[] backendSkills;
String[] devOpsSkills
String[] collaborationTools
String[] interests;
}
public class Main() {
public static void main(String[] args) {
Member minsuk = Member.builder()
.name("김민석")
.job("Software engineer🧑🏽💻")
.developmentFields({"Back-end🔭"})
.languages({"java☕"})
.backendSkills({Spring🌱, Dropwizard,JPA🔧, MyBatis🦤, Junit55️⃣, Mockito🍸, Gradle🐘, Lambda🔸, OpenSearch🔹})
.devOpsSkills({Ubuntu🐺, Github Actions♾️, Mysql🐬, Docker🐋 AWS EC2☁️, S3, CodeDeploy, SecretsManager})
.collaborationTools({Slack📑, Notion, Jira, Github project, Git, Intellij})
.interests({"정리", "실험", "습관", "마찰력"})
.build();
introduce(minsuk);
}
}-
더 깊이 있고 근거에 기반한 지식을 쌓기 위해 기술 선택 시 여러 솔루션의 장단점과 사용자 UX의 Trade off를 고려했습니다.
- #1 타행 이체 기능 성능 개선기, 프로젝트 소개
- #2 타행 이체 기능 성능 개선기, 데이터 정합성
- #3 타행 이체 기능 성능 개선기, 속도(아웃박스 스케줄러 전략 선정 및 구현)
- #4 타행 이체 기능 성능 개선기, 속도(인프라 개선)
- #5 타행 이체 기능 성능 개선기, 속도(이체 입금 요청 API 처리 전략)
- #6 타행 이체 기능 성능 개선기, 속도(gap lock으로 인한 insert 병목 해결)
- #7 타행 이체 기능 성능 개선기, 비관락 획득 후 외부 API 호출 최소화
- 브루트포스 공격 특성을 고려한 비밀번호 해싱 알고리즘 선정 및 적용
- 사용자의 UX를 고려한 JWT 로그인 보안 전략 수립 및 구현
- 도커와 Testcontainer를 활용한 서버와 동일한 환경에서의 로컬 테스트 구현
-
알고리즘 문제 해결 과정 복기 및 글 정리
- 모든 알고리즘 문제의 해결법 사고 과정 글로 정리.
- 문제를 나만의 언어로 추상화 하고 이를 요구사항(시간, 공간 복잡도)에 맞는 적절한 자료구조와 알고리즘을 선정하는 사고 과정이 중요하다고 생각합니다. 이에 모든 사고 과정을 글로 정리하고 있습니다. 정리된 글은 Algorithm_diary repository에서 확인할 수 있습니다. 더 많은 사람과 공유하기 위해 블로그로 옮길 예정입니다.
- 서비스 개발은 많은 팀원을이 협업하여 이뤄내는 것이기 때문에 Issue, PR, Wiki 등 문서화에 관심이 많습니다.
- 티스토리 블로그 에서는 사회의 성장에 기여하기 위해 제가 재생산한 지식과 의견을 주기적으로 작성했습니다.



