개발자에게 도움되는 링크를 모으는 저장소 입니다.
- 인텔리J 활용 꿀팁 42가지 정리
- Intellij 테스트 자동 실행하기
- IntelliJ IDEA best plugins
- [서버] postman 활용 1~3편
- IntelliJ IDEA와 Git Bash 연동하기
- 가장 많이 사용되는 IntelliJ IDEA 단축키 15개
- OKKYCON: 2018
- SPRING CAMP
- 자바, 성능, 모니터링 테크세미나 정리 및 후기 (by 우아한 형제들)
- if kakao dev 2019
- 우아한테크세미나
- 자바 메모리 모델
- JDK8 적용 후, 심각한 성능저하가 발생한다면?
- 뒤늦게 배워보자, Java 8 Part. 5
- 10 Tools Java Developers Should Learn in 2019
- 자바 바이트코드 소개
- 자바 메모리 관리 - 스택 & 힙
- 자바 메모리 관리 - 가비지 컬렉션
- Java 컴파일에서 실행까지 - (1)
- Design Patterns in Java Tutorial
- Java 스트림 Stream 총정리
- Java Lambda
- 객체지향 개발 5대 원리: SOLID
- Anti-OOP : if 를 피하고 싶어서
- 일급 컬렉션 (First Class Collection)의 소개와 써야할 이유
- [번역]쉬운 테스트 주도 개발과 단위 테스트를 위한 5단계 방법론
- Java gc log 분석, 시각화하는 무료 사이트 추천 gceasy.io
- Cloud Native Java GraalVM 이상과 현실
- (JVM) Garbage Collection Basic
- Checked Exception을 대하는 자세
- 우아한 객체지향
- 자바 애플리케이션의 보안 검수 방법 살펴보기
- [Java] Integer.valueOf(127) == Integer.valueOf(127) 는 참일까요?
- java.lang.Object.hashCode 메소드
- JVM 메모리 구조와 GC
- 주니어 개발자의 클린 아키텍처 맛보기
- Java Optional 바르게 쓰기
- Java URLClassLoader로 알아보는 클래스로딩
- MSA에서 동시에 여러 API 호출로 응답 시간 줄이기
- 널 오브젝트 패턴 (Null Object Pattern)
- 더 자바: 코드를 테스트하는 다양한 방법
- 캠퍼스 핵데이 Java 코딩 컨벤션
- “Fast Campus 올인원 패키지: Java 웹 개발 마스터” 실전 프로젝트
- 모던 자바 (자바 8) - 못다한 이야기
- Back to the Essence - Java 컴파일에서 실행까지 - (1)
- Builder 기반으로 객체를 안전하게 생성하는 방법
- 여러 개의 JDK를 설치하고 선택해서 사용하기
- Java 시스템 운영 중 알아두면 쓸모 있는 지식들
- Spring 내가 생각하는 캡슐화 part 1
- IoC (DI, Service Locator...)
- Spring 프레임워크 워크북을 위한 도서 로드맵
- Spring Guide - 테스팅 전략
- Spring 실전 가이드
- Jackson 어노테이션 사용법
- Inversion of (Coupling) Control in Java
- DI는 IoC를 사용하지 않아도 된다
- Spring 의 시작, 프레임워크의 구성요소와 동작원리
- 초보가 이해하는 스프링 시큐리티
- Spring AOP를 학습하기 전 AOP 개념 정리
- Spring AOP로 메소드 시간 측정하기
- 온라인 서점 API 만들기로 살펴보는 Spring Boot OOP
- MyBatis @Mapper 인터페이스는 어떻게 스프링 빈으로 와이어될 수 있을까?
- [Spring Framework] 스프링 환경에서 런타임 전략패턴
- WebFlux로 Asynchronous & Non-blocking I/O 전환하여 API 성능 튜닝하기
- 멀티모듈 설계 이야기 with Spring, Gradle
- 스프링부트 테스트(1)
- Java 와 Spring 의 Validation
- Spring에서 Request를 우아하게 로깅하기
- Spring Webflux + JDBC(혹은 blocking call) 핸들링 방법
- Spring Boot Test
- Spring Guide - 외부 API 가이드
- 스프링 부트 유투브 강의 - 백기선
- Spring 의 시작, 프레임워크의 구성요소와 동작원리
- 테스트 코드 없이 레거시 코드를 다 감수하시겠습니까?
- 테스트 코드 작성에 대한 나름의 고찰
- Spring WebFlux와 Kotlin으로 만드는 Todo 서비스 – 2편
- Custom Validation
- [우아한테크세미나] 우아한 스프링 배치 후기
- Quartz 스케줄러 적용 아키텍처 개선 - 1
- 스프링 - 생성자 주입을 사용해야 하는 이유, 필드인젝션이 좋지 않은 이유
- 스프링부트에서 DbUnit 을 이용하여 DB 테스트 해보기
- 스프링5 웹플럭스 정리 및 샘플 코드
- Java null survival guide
- Spring Transaction에 대한 노트
- Spring Guide
- 멀티모듈 설계 이야기 with Spring, Gradle
- HTTP 쿠키와 톰캣 버전별 이슈
- WAS의 동작과 WEB, Servlet, JSP
- 웹서버 부하테스트 실전 노하우
- 브라우저 싸움에 등 터지는 개발자들을 위한 HTTP쿠키와 톰캣 쿠키 프로세서 이야기
- Scaling to 100k Users
- TCP/IP 네트워크 스택 이해하기
- RESTful, Stateless, HATEOAS
- [Network] HTTP 헤더의 종류 및 항목
- 안전한 SSL/TLS를 운영하기 위해 알아야 하는 것들
- HTTP/3 해설 한국어
- NAVER D2 Day1, 2-2. 그런 REST API로 괜찮은가
- CORS, Preflight, 인증 처리 관련 삽질
- 버즈빌의 개발 이야기- 보안 프로토콜 TLS 1.3
- 네트워크 모니터링이 궁금할땐 ? Packetbeat !
- 대상 서버의 포트가 열려 있는지 확인하는 3가지 방법
- HTTP/3: 과거, 현재 그리고 미래
- HTTP/3는 왜 UDP를 선택한 것일까?
- 만화로 보는 DNS over HTTPS
- HTTP에서 HTTPS로 전환하기 위한 완벽 가이드
- 패킷의 흐름과 오류를 제어하는 TCP
- QUIC과 HTTP/3 - 1. UDP기반 전송 프로토콜의 대두
- 쿠키, 세션, 캐시가 뭔가요?
- HTTPS 전환 과정에서 read timeout 오류 해결 과정
- Docker 치트 시트
- 왜 굳이 도커(컨테이너)를 써야 하나요?
- 도커 컴포즈를 활용하여 완벽한 개발 환경 구성하기
- 쿠버네티스 시작하기 - Kubernetes란 무엇인가?
- 대규모 Kubernetes 클러스터 구축기
- 쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)
- [번역] 쿠버네티스 네트워킹 이해하기#1: Pods
- 도커 입문 hands-on
- Docker기반 Redis 구축하기
- 왜 굳이 도커(컨테이너)를 써야 하나요?
- 만들면서 이해하는 도커(Docker) 이미지의 구조
- [번역] 쿠버네티스 네트워킹 이해하기#1: Pods
- [번역] 웹 캐싱의 숨겨진 요소들
- Web Development Tutorial
- 마이리얼트립 웹사이트 성능 측정 및 최적화 Part 1. 리소스 로딩
- 한글 인코딩의 이해 1편: 한글 인코딩의 역사와 유니코드
- 개발자를 위한 인프라 기초 총정리
- Kafka 운영자가 말하는 처음 접하는 Kafka
- 안전한 SSL/TLS를 운영하기 위해 알아야 하는 것들
- [우아한테크토크] 선착순 이벤트 서버 생존기! 47만 RPM에서 살아남다?!
- 천만 명의 사용자에게 1분 내로 알림 보내기 (병렬프로세스의 최적화)
- 대규모 서비스를 지탱하는 기술 - 기초편
- 카프카 설치 시 가장 중요한 설정 4가지
- 쿠팡 데이터 플랫폼의 진화
- 잘 키운 모노리스 하나 열 마이크로서비스 안 부럽다
- [번역] 10가지 소프트웨어 아키텍처 패턴 요약
- LINE LIVE 채팅 기능의 기반이 되는 아키텍처
- 배달의민족 최전방 시스템! '가게노출 시스템'을 소개합니다.
- 개념 정리 - 데이터베이스 편
- MySQL Workbench의 VISUAL EXPLAIN으로 인덱스 동작 확인하기
- LINE Manga 데이터베이스 샤딩 – 서버 엔지니어 편
- Mysql Explain
- 메인 데이터베이스 IDC 탈출 성공기
- [2019] 200만 동접 게임을 위한 MySQL 샤딩
- HikariCP Dead lock에서 벗어나기 (이론편)
- Redis 잘 쓰는법[?]
- Jedis 보다 Lettuce 를 쓰자
- SpringBoot기반 Redis Cache 활용법
- 레디스 클러스터, Read from Slave
- [우아한테크세미나] 191121 우아한레디스 by 강대명님
- Vim에 매료되다. (Feat.Happy Hacking)
- 리눅스의 페이지 캐시와 버퍼 캐시
- 캐시가 동작하는 아주 구체적인 원리
- 101 Bash Commands and Tips for Beginners to Experts
- 쓰레드풀 과 ForkJoinPool
- 고급 Bash 스크립팅 가이드
- 리눅스 관리자 네트워크 트러블슈팅, 디버깅 명령어
- 리눅스 서버의 TCP 네트워크 성능을 결정짓는 커널 파라미터 이야기 - 1편
- vim 사용하기
- Bash 입문자를 위한 핵심 요약 정리 (Shell Script)
- [코드잇 꿀팁] 개발자라면 꼭 알아야 할 커맨드 꿀팁!
- 자바스크립트 호출 스택(Call Stack) 이해하기
- JavaScript 배열(Array)의 발전과 성능에 대해서 자세히 알아보기
- 자바스크립트 async와 await
- 실수할 수 있는 자바스크립트의 타입과 값들
- Babel, Mocha, Karma and Webpack with coverage in order
- 모든 자바스크립트 개발자가 알아야 하는 33가지 개념
- 누구나 한 번쯤은 띄워본 JavaScript 에러 TOP 10
- 성능덕후를 위한 자바스크립트 코딩 패턴(중급)
- Custom Promise 구현으로 프로미스 파혜치기
- 모던 JavaScript 튜토리얼
- 어쨌든 이벤트 루프는 무엇입니까? | Philip Roberts | JSConf EU
- 자바스크립트에서 [object Object] 가 대체 뭘까?
- (고급) JavaScript 질문 목록
- 왜 JSON.parse로 객체를 선언하는 방법이 더 빠를까?
- <번역>자바스크립트의 메모리 모델
- 자바스크립트 엔진에 대한 오개념과, Inline cache
- 자바스크립트 동작 원리 시각화 [영문]
- 14 가지 JavaScript 함수
- AWS VPC basic
- Amazon Aurora MySQL Database Administrator’s Handbook (요약 및 의역)
- CloudWatch에 대하여
- [AWS] 가장쉽게 VPC 개념잡기
- AWS로 사용자 천만 명 서비스 만들기 (윤석찬)
- 구글 면접 후기
- 기술면접 자료 Repository
- vuejs-interview-questions-korean
- [면접] 개발자 면접관을 감동시키는 면접
- [개발자 인터뷰 시 면접관에게 할 만한 질문 모음](https://gomcine.tistory.com/entry/%EC%9B%B9-%EA%B0%9C%EB%B0%9C%EC%9E%90%EB%A1%9C-%EC%9E%85%EC%82%AC%ED%95%98%EA%B8%B0-%EC%A0%84%EC%97%90-%EB%A9%B4%EC%A0%91%EA%B4%80%EC%97%90%EA%B2%8C-%ED%95%B4%EC%95%BC%ED%95%A0-%EC%A7%88%EB%AC%B8)
- [면접] 면접관이 거르지 않는 개발자 이력서
- [번역] 개발자를 위한 면접 지침
- 회사에 궁금한 점은 없나요?
- 기술 면접 인터뷰 자료
- 이직 회고록
- 나의 대기업 취업기_1
- 문과생의 카카오 개발자 이직기 - 1 (서류 & 코딩테스트)
- 길고 긴 카카오(Kakao)로 이직 이야기
- 아틀라시안 취업후기
- 이력서 - 1분의 싸움
- 입사 후, 벌써 1년
- 5년차 프로그래머의 이직 일기
- 깃(Git) 유용한 팁
- git add -p 와 git commit -v 의 사용
- Git 브랜치 배우기 실습
- .git - 쩜깃의 이해
- Pro Git Book
- Top 20 Git Commands With Examples
- Git flow, GitHub flow, GitLab flow
- 여러 git 리파지토리 한꺼번에 git 명령어 적용하기
- README.md 10초만에 깔끔하게 만드는 법
- Git을 이용한 협업 워크플로우
- Git 계정 여러 개 동시 사용하기
- 좋은 git commit 메시지를 위한 영어 사전
- Git 사용 중 자주 만나는 이슈 정리
- 커밋 히스토리를 이쁘게 단장하자
- 유용한 Github 관련 크롬 익스텐션 소개
- Git 커밋 메시지 작성법
- Git 사용 중 자주 만나는 이슈 정리
- [NDC16] Effective Git
- 사람들이 잘 안알려주는 GitHub 팁
- 완벽한 Mac 작업환경 세팅하기 (vim, zsh, iterm)
- Homebrew와 Shell Script를 사용하여 맥(Mac) 개발 환경 구축 자동화하기
- macOS 초심자를 위한 터미널 공부 가이드
- 본격 macOS에 개발 환경 구축하기
- [크롬 개발자 도구 101](https://lqez.github.io/blog/chrome-dev-tool-101.html)
- 크롬 개발자 도구를 이용한 자바스크립트 디버깅
- 크롬개발도구 사용법(영어)
- 2019년 브라우저의 상태
- 브라우저는 어떻게 동작하는가?
- Things you may not know about Chrome DevTools
- 개발자가 블로그를 운영해야 할 이유
- [번역] 더 나은 개발자가 되는 8 가지 방법
- 회사에서 인정받는 8가지 방법
- 개발자에게 좋은 직장 혹은 좋은 환경
- 개발자의 효율성
- [생각정리]소프트웨어 개발의 지혜
- [MeltingCon 2018] 기술서 번역이 개발자의 삶에 미치는 영향에 대하여 - 신상재
- 문서화에 대해 아무도 말해주지 않는 것들
- 3년차 웹 개발자
- 백엔드가 이정도는 해줘야 함 시리즈
- 개발자의 글쓰기(김철수 지음) PDF
- 확장하기 쉬운 코드가 아니라 삭제하기 쉬운 코드를 작성하자
- 패러다임, 디자인 패턴, 리팩터링의 중요성 그리고 성능에 대해
- 개발 미션과 함께 읽는 클린 코드
- java-persistence-frameworks-comparison
- 클린 코드와 소프트웨어 장인 정신
- [번역] 웹 아키텍쳐 입문
- 후배 개발자에게 - 2019년
- 백엔드가 이정도는 해줘야 함 - 1. 컨텐츠의 동기와 개요
- 개발자 로드맵 2019
- 문서화에 대해 아무도 말해주지 않는 것들
- 훌륭한 개발자란 무엇일까
- 4년을 기다린 인프런 서비스 리뉴얼 오픈
- 프로그래머는 몇 살까지 할 수 있나
- 따라가지 않으면, 도태되는 걸까
- 소프트웨어 아키텍처에 대해 알아보기
- 언어별 프로젝트 기반 학습
- SI 탈출 가이드
- 개발자의 실력 vs 학력
- 넷플릭스의 문화 : 자유와 책임 (한국어 번역본)
- 뛰어난 개발자는 뽑히는 게 아니라 길러집니다.
- 적당히 잘하는 개발자
- 주니어의 짝코딩 경험기
- 웹 개발자의 10가지 흔한 실수
- 비전공자가 스타트업 개발자로 취업할 때 참고하면 좋을 것들
- (자막)[NDC19] 좋은 로그란 무엇인가?: 좋은 로그를 위해 고려해야 할 것들
- 결혼식 청첩장 Github blog로 세련되게 만들기. 후기!
- 소프트웨어 개발자 되기는 왜 어려운가?
- Notion 1년간의 사용기
- 포스트맨 200% 활용하기
- 카카오스토리 팀의 코드 리뷰 도입 사례 - 코드 리뷰, 어디까지 해봤니?
- 개발 과제를 준비하는 팁 10가지
- 휼륭한 개발자란 무엇일까
- 마이리얼트립 사업개발팀에서 리크루터가 되었습니다
- 실력이 스펙을 이긴다, '삼성 Y수석의 비밀'
- 스터디 모임 방법 몇 가지
- 개인의 '성장'과 회사의 '성장'
- 당신의 사이드 프로젝트를 위한 10가지 팁
- 효과적으로 TDD, 리팩토링, OOP를 연습하는 방법은?
- 흔한 주니어 개발자의 VueJS 책 집필기
- 마이리얼트립 프론트엔드팀은 어떻게 협업하고 있을까?
- [번역]정규표현식으로는 5일 걸리는 작업, 15분만에 끝내기
- 주니어 개발자가 준비해야 할 것들
- 기술 스택이 낡아갈 때 할 수 있는 일들 (1)
- 난 개발자인가? 그리고 앞으로는?
- [공부법] 같이 개발 공부를 잘 하는 법, 입사 후에 더욱 발전하는 법
- 개발을잘하고싶어요-네이버랩스 송기선님
- 개발자가 공부로 살아남는 방법
- 프로그래밍 언어 배우기의 달인
- 휴면 계정 처리 – 배치에서 온라인 시스템으로
- 개발자 머피의 법칙
- SI 개발 10년차인데 코드 좀 봐주세요
- [B급 프로그래머] What's the single most valuable lesson you've learned in your professional life?
- 내게 실용적이었던 프로그래밍 공부 방법들
- 문제를 해결할 때 사고가 중요한 이유
- 평범한 개발자 그 이상이 되기 위한 야생 학습 비결
- LINE 서버 개발자가 되기까지 내가 준비한 것들
- 디알못 탈출하기 1탄 - 시각적 계층구조 (Visual Hierarchy)
- 코드가 아니라 밸류를 만든다 : 유니콘 우아한형제들의 조직문화
- 입사 후, 벌써 1년
- 날짜와 시간 표시에 대한 디테일
- 7 Tips to boost your productivity as a web developer
- LINE의 장애 보고와 후속 절차 문화
- 코드 가독성에 대해 – 1. 도입과 원칙
- 마이크로 서비스를 사용하지 않는 경우
- 애자일과 소프트웨어 장인정신
- 프레임워크 공부를 멈춰라
- 불안한 마음 정면으로 마주보기
- 개발자를 위한 A/B 테스트 해시 샘플링
- Code Review에 대해
- public-apis
- 나다운 글쓰기 수련법
- 절망 드리븐 성장: 함께 일하고 싶은 개발자가 되기까지
- 글로벌 LINE DEV의 기술 공유 문화
- 훌륭한 프로그래머가 되고 싶다면 만들어야할 앱 8 선
- 나는 어떻게 공부했는가?
- 웹 개발자의 지옥, 이메일 폼 개발하기
- IT 기업 기술 블로그 모음
- 개발을잘하고싶어요-네이버랩스 송기선님
- 아이패드로 코딩하기
- 지속 가능한 소프트웨어를 위한 코딩 방법 - 첫 번째
- 처음 발표를 준비하는 개발자들이 알아두면 좋을 것들