profile
글 쓰는 개발자
태그 목록
전체보기 (118)Spring(15)OOP(12)Algorithms(12)OS(10)OSTEP(9)파이썬(8)express(7)하루 3분 네트워크 교실(6)API(5)알고리즘(5)docker(5)node.js(5)네트워크(5)CI/CD(4)kotlin(4)python(4)Infra(3)System Design Interview(3)Backend(3)협업(3)Paging(3)scheduling(3)JPA(3)aws(3)github(2)abstraction(2)redis(2)DP(2)객체지향의 사실과 오해(2)TDD(2)git(2)Spring boot(2)ktlint(2)encapsulation(2)오픈소스(2)pm2(2)prisma(2)회고(2)access token(2)address space(1)Polymorphism(1)refresh-token(1)Limited Direct Execution(1)ubuntu(1)네트워킹(1)Context Switching(1)system-design(1)CodeDeploy(1)IAM(1)process(1)개발(1)mac(1)Cache(1)swap(1)address(1)toss(1)velog(1)page fault(1)투 포인터(1)Union Find(1)kakao Enterprise(1)fetch join(1)service(1)BST(1)MLFQ(1)Copilot(1)loc(1)yml(1)Sync(1)(1)후기(1)composition(1)feature flag(1)async(1)비동기(1)검색(1)SOLID(1)network(1)JavaScript(1)질문(1)sms(1)스터디(1)git submodule(1)알쓸(1)policy(1)implements(1)inheritance(1)CEP(1)테스트(1)ec2(1)JWT(1)next(1)ocp(1)msa(1)aop(1)interface(1)sonarcloud(1)슬라이딩 윈도우(1)express.js(1)circleci(1)ses(1)ipad(1)di(1)architecture(1)cloud(1)Internship(1)setInterval(1)setTimeout(1)AI(1)ESB(1)mysql(1)present bit(1)LIS(1)extension(1)secret(1)dependency(1)위상 정렬(1)B2B(1)log(1)spring-rest-docs(1)소프트웨어마에스트로(1)cpu(1)NMS(1)백트래킹(1)apm(1)EAI(1)멀티 레벨 페이지 테이블(1)HATEOAS(1).DS_Store(1)segmentation(1)ecr(1)gitmoji(1)Java(1)Binary Search(1)ccw(1)babel(1)SW 마에스트로(1)linear search(1)Blue/Green(1)tips(1)기록(1)etl(1)dynamic programming(1)devops(1)docker compose(1)PR(1)소프트웨어 마에스트로(1)kakao(1)exception(1)vscode(1)authentication(1)coop(1)N+1 문제(1)sentry(1)설정(1)object(1)CodeApp(1)IntelliJ(1)web(1)interview(1)tlb(1)Greedy Alogrithm(1)mode switching(1)기여(1)백엔드(1)소마(1)자료구조(1)선분 교차 판별(1)Wrapper Class(1)DIP(1)LomBok(1)dynamic relocation(1)지식(1)crontab(1)
post-thumbnail

2022년 1~3분기 회고

2022년도 현재 9월까지 참 다사다난 했다.아직 회고를 한 번도 하지 않았는데 ( 원래 2분기가 끝난 7월 달쯤 하려고 했는데.. ), 이제 와서야 어떤 일을 겪었는지 어떤 경험들을 했는지 공유해보려고한다.인턴으로 회사를 작년 12월부터 다니고 있었다. 원래는 3월에

2022년 9월 18일
·
2개의 댓글
·
post-thumbnail

Spring + AWS SDK Kotlin 이용하여 SES로 email 전송하기

이번 글에서는 AWS SDK Kotlin을 이용하여 Spring에서 메일을 보내는 법을 알아보겠습니다.

2022년 9월 18일
·
0개의 댓글
·
post-thumbnail

가상 면접 사례로 배우는 대규모 시스템 설계 기초 - 시스템 설계 면접 공략법

시스템 설계는 단순해보이지만, 결국 복잡한 것을 설계하게 된다.이러한 복잡한 시스템을 완벽하게 설계하는 것을 기대하지 않는다.결국 모호한 문제를 협력하여 해결해나가는 과정이다.답도 없고, 정해진 결말도 없다.설계 과정에서 내린 결정을 증명하고 방어하는 자리또한, 면접관

2022년 9월 11일
·
0개의 댓글
·
post-thumbnail

가상 면접 사례로 배우는 대규모 시스템 설계 기초 - 개략적인 규모 추정

제대로 된 계산 결과를 얻기 위해 데이터 볼륨의 단위를 2의 제곱수로 표현하면, 어떻게 되는지를 알기 위한 값들.각 연산에 따른 지연 시간을 정리해놓은 값들.이 값을 통해서 대략적인 비교가 가능하다.메모리는 빠르지만, 디스크는 느리다디스크 탐색은 최대한 피하라단순한 압

2022년 9월 11일
·
0개의 댓글
·
post-thumbnail

가상 면접 사례로 배우는 대규모 시스템 설계 기초 - 사용자 수에 따른 규모 확장성

이번 챕터에서는 작은 수의 사용자를 커버할 수 있는 사례부터 시작해서, 대규모 사용자까지 대응 할 수 있는 구조를 만들어나갈 것이다.도메인을 통한 질의DNS 결과 반환웹서버에 요청웹서버는 데이터 반환데이터는 보통 HTTP 프로토콜을 사용하여 JSON 데이터를 반환할 것

2022년 9월 4일
·
1개의 댓글
·
post-thumbnail

토스 NEXT 2022 서버 직군 합격 후기

신입으로 토스 NEXT 2022에서 토스페이먼츠 Server Developer 직군에 합격하게 되었는데, 관련하여 후기를 남깁니다.서버 파트의 코딩테스트는 알고리즘 및 서술형으로 진행되었고, 알고리즘 7문제를 1시간 30분, 서술형 5문제를 30분 동안 풀이하는 것이였

2022년 8월 31일
·
4개의 댓글
·
post-thumbnail

[Tips] 프로젝트의 코드 품질 유지를 위한 SonarCloud 도입하기

코드를 작성하다보면, 코드의 품질을 유지하기 위해 여러가지 방법을 도입합니다. 예를 들어, linter를 도입해서 코드 컨벤션을 맞추고, 코드 리뷰를 통해서 코드의 문제점을 파악하는 등 여러가지 방법을 도입합니다. 이번에는 정적 분석기인 SonarQube의 클라우드

2022년 8월 19일
·
0개의 댓글
·
post-thumbnail

[Infra] Github Actions + ECR + Auto Scaling Group + EC2 + CodeDeploy + S3 를 사용하여 Blue/Green CI/CD 구축하기

이 포스팅은 간단하게 Github Actions + ECR + AutoScalingGroup + CodeDeploy + S3를 사용하여 Blue Green 배포를 해보는 과정을 다음 글입니다.이 글은 Github Actions과 블루 그린 배포에 대한 이해와, ECR,

2022년 8월 13일
·
0개의 댓글
·
post-thumbnail

[Spring] Kotlin으로 unit 테스트 작성하기

Spring REST Docs를 이용해서, e2e테스트를 작성하고 있었지만 unit 테스트의 필요성을 알고 있었기에 unit 테스트를 어떻게 하면 좋을까를 고민했습니다.보통 Java에서는 Mockito라는 것을 이용해서 mocking을 한다는데, kotlin에서 사용하

2022년 8월 13일
·
0개의 댓글
·

[Spring] Exception 해결 전략

try catch를 최대한 지양.try catch로 에러를 삼키고 다음으로 진행하는 방식도 지양. 만약 사용할 것이면, 로그를 명확하게 제대로 남기자.try catch를 사용하게 된다면, 로그를 제대로 남기던가 더 구체적인 Exception을 throw하자.미리 처리해

2022년 8월 12일
·
0개의 댓글
·
post-thumbnail

Docker sudo 권한 없이 사용하기

sudo usermod -aG docker ${USER}위 명령어를 한 번 실행하고 나면, sudo 권한 없이 사용 가능하다.The Docker daemon binds to a Unix socket instead of a TCP port. By default that

2022년 8월 7일
·
0개의 댓글
·
post-thumbnail

Docker 컨테이너에서 localhost와 통신하기

Docker 컨테이너에서 localhost를 지정하여 통신을 할 때, 가끔 제대로 된 동작이 안되는 경우가 있습니다.이럴때, 만약 같은 Docker 컨테이너끼리라면 docker에서 network를 생성해서 container 이름끼리 호출을하면 문제없이 해결을 할 수 있

2022년 8월 7일
·
0개의 댓글
·
post-thumbnail

Velog-readme-stats를 강화해보자

오늘은 velog에서 기본적으로 제공해주지 않는 기능을 평소에 자주쓰던 velog-readme-stats 를 이용하여 구현해보려고합니다. Velog는 내 글들의 전체 통계를 보여주지 않습니다.

2022년 7월 29일
·
0개의 댓글
·
post-thumbnail

[Spring] 왜 JPARepository는 @Repository가 필요 없을까? ( deep dive 해보기 )

Spring Data JPA를 사용하다보면, JPARepository<T, ID> 를 implement하는 인터페이스는 @Repository 어노테이션이 필요하지 않습니다.예를들어 다음과 같은 인터페이스는 @Repository 어노테이션을 사용하지 않아도 빈으로

2022년 7월 25일
·
0개의 댓글
·
post-thumbnail

[Spring] AOP와 ArguementResolver를 이용하여 반복작업 줄이기

제가 요즘 개발하고 있는 소프트웨어 13기 팀 몬스테라의 CS Broker 백엔드 서버는 Kotlin 과 Spring으로 이루어진 스택으로 개발을 진행하고 있습니다.이 API 서버는 인증 및 인가에서 State-less를 유지하기 위해, 제일 자주 사용되는 JWT를 사

2022년 7월 20일
·
0개의 댓글
·
post-thumbnail

[Spring] 설정 파일 비밀스럽게 관리하기

Spring 설정 파일을 비밀스럽게 관리하는 5가지 방법

2022년 7월 20일
·
0개의 댓글
·
post-thumbnail

[Tips] Gitmoji를 커밋 컨벤션으로 사용하기

저희 소프트웨어 마에스트로 13기 몬스테라 팀은 Gitmoji를 commit 컨벤션으로 사용하기로 정했습니다.Commit 메세지를 보면 참 귀여운 것을 알 수 있죠.그런데, 저희는 왜 gitmoji를 사용하기로 했을까요?그 전에 gitmoji가 뭘까요?Gitmoji는

2022년 7월 20일
·
1개의 댓글
·
post-thumbnail

[Tips] 오픈소스에 초보 개발자가 기여하는 방법

이번 포스트는 오픈소스에 초보 개발자가 기여하는 방법이라는 주제에 대해서 다룰 예정이다. 내가 어떻게 오픈소스에 기여를 시작했고, 오픈소스 기여를 해보지 않은 사람들이 어떻게 오픈소스 기여를 시작할 수 있을지에 대해 알아보자. > 이 포스트는 소문난 주니어 콘퍼

2022년 7월 19일
·
6개의 댓글
·
post-thumbnail

Ktlint는 왜 wild card import를 권장하지 않을까?

Kotlin의 lint 툴 중 하나인 ktlint는 아래와 같이 no wildcard import를 적용하고 있다.사실 unused import까지는 원래 알고 있던 내용이고, 동의하는 내용이여서 이해했는데 갑자기 ktlint를 사용하니 wildcard import를

2022년 7월 9일
·
0개의 댓글
·
post-thumbnail

IntelliJ IDEA에서 Ktlint 적용하기

요즘 개발을 할 때, kotlin을 꾸준히 사용하고 있는데 Ktlint와 Kotlin Style Guide 를 사용하여 코드 스타일을 정립하고 있다.근데, ktlint formatting을 분명 IntelliJ에 적용했는데 제대로 동작하지 않아서 어찌어찌 찾다보니까 해

2022년 7월 9일
·
0개의 댓글
·