728x90
320x100
-
시스템 설계 기초 (로드밸런스, 메세지 큐, CDN, DNS 등) 아래의 내용은 을 바탕으로 정리한 내용입니다. 사용자는 웹 브라우저나 모바일 앱을 통해 도메인 이름을 이용하여 웹사이트에 접속한다. 이 접속을 위해서 DNS에 질의하여 IP주소로 변환하는 과정이 필요하다.DNS(Dmain Name Service) : 도메인 이름을 IP주소로 반환한다. ex) www.test.com -> 100.100.100.100정적 콘텐츠 (JS, CSS, 이미지 등)은 웹서버를 통해 서비스하지 않고 CDN을 통해 제공하여 더 나은 성능을 보장한다. CDN(콘텐츠 전송 네트워크) : 정적 네트워크를 전송하는데 쓰이는, 지리적으로 분산된 서버의 네트워크로 JS, CSS, 이미지 등을 캐시할 수 있다.CDN 사용시 고려해야 할 사항 : 적절한 만료 시한 설정, 비용, 장에 애 대..
-
[HTTP] 인터넷 네크워크 (IP(인터넷 프로토콜), TCP/UDP, PORT, DNS) 인터넷 프로토콜 스택의 4계층인터넷 프로토콜 스택의 4계층을 간략하게 보면 위와 같다. 이를 좀 더 뜯어보자. 인터넷 프로토콜(Internet Protocol, IP)인터넷 프로토콜(Internet Protocol, IP)은 컴퓨터 네트워크에서 데이터를 주고받는 데 사용하는 규약이다.IP는 인터넷의 핵심 프로토콜로, 모든 인터넷 트래픽의 전달을 담당한다.IP 주소를 사용하여 발신지와 수신지를 식별하고, 데이터를 패킷(packet)이라는 작은 단위로 나누어 전송한다.인터넷에서 데이터를 주고 받기 위해서 각자 전송과 송신이 가능한 식별자가 필요한데, 그 중 하나가 IP이다. 인터넷 프로토콜(Internet Protocol, IP) 주요 개념 IP 주소IPv4 (Internet Protocol version..
-
[스프링(Spring)] 롬복(Lombok) (롬복이란 / 자주 쓰는 기능 / @Data 사용을 지양해야 하는 이유 등) 롬복(Lombok) 이란?롬복(Lombok)은 자바 개발자들이 코드 작성을 더욱 편리하게 할 수 있도록 도와주는 라이브러리이다. 롬복(Lombok)의 특징컴파일 시점에 코드를 추가한다.별도의 라이브러리를 추가로 설치해야 한다.IDE의 플러그인을 지원한다. [자주 쓰는 기능] @Getter, @Setter클래스의 필드에 대한 getter, setter 메서드를 자동으로 생성해 준다.코드의 양을 줄이고, 가독성을 높일 수 있다.[사용전]public class User { private String name; private int age; public String getName() { return name; } public void setName(String name) ..
-
[스프링(Spring)] HTTP 요청 메시지를 통해 클라이언트에서 서버로 데이터를 전달하는 방법 (@RequestParam, @RequestBody, @ModelAttribute 이해하기) HTTP 요청 메시지를 통해 클라이언트에서 서버로 데이터를 전달하는 가장 많이 사용하는 3가지 방법과 스프링과 연계하여 @RequestParam, @RequestBody, @ModelAttribute 어노테이션에 대해 이해해보자! [HTTP 요청 메시지를 통해 클라이언트에서 서버로 데이터를 전달하는 방법]가장 많이 사용하는 3가지 방법을 정리하였다. 1. GET - 쿼리 파라미터 형식으로 요청하기HTTP message body 없이, URL의 쿼리 파라미터에 데이터를 포함해서 전달하는 방식이다.요청형태 -> /url?username=hello&age=20검색, 필터, 페이징 등에서 많이 사용한다.*** 이 때 주로 사용하는 (혹은 적절한) 스프링 어노테이션@RequestParam@GetMapping(..
개발일지를 씁니다.
-
[홍보글] 드디어 KNOU-CBT가 오픈했습니다! 들어가는 글이번 포스팅은 홍보글입니다. 제가 최근에 사이드프로젝트 하나를 런칭?출시?하게 되어서 프로젝트에 대해서 홍보 겸 설명을 할까합니다 어떤 사이드 프로제트 인가요?방통대 기출문제를 웹에서 쉽게 풀어보고 채점까지 할 수 있는 사이트입니다. 왜 만들게 되었나요?제가 방통대 재학시절에 기말시험 준비를 할 때 각 강의 자료실에 있는 기출문제를 다운받아 풀면서 준비를 많이 했었는데요. 파일을 인쇄해서 풀면 매번 답지를 따로 적어서 채점에야 여러번 풀 수 있어 불편했고, 또 아이패드로 옮겨서 풀자니 채점할 때가 너무너무 불편하고 귀찮았습니다. 이 역시도 여러번 풀려면 쉽지 않았고요. 그래서 방통대 기출문제를 웹에서 쉽게 풀고 채점할 수 있는 사이트가 있었으면 했어요. 그래서 만들게 되었습니다. 어떻게 이용.. -
[개발일지#016] 데이터베이스 마이그레이션 하기 1. 마이그레이션이란?DB 스키마(테이블, 컬럼, 인덱스 등) 변경 사항을 버전 관리하면서 적용하는 과정create table, alter table 같은 쿼리를 직접 날리는 대신, 코드/도구로 관리2. 왜 필요한가?개발/테스트/운영 환경을 똑같이 맞추기 위함팀 단위 협업 시 "누가 alter 했더라?" 문제 방지배포 시 Render 서버가 자동으로 동일한 DB 스키마로 맞춰짐3. 도구 선택🔹 Spring Boot에서 주로 쓰는 툴Flyway (가장 많이 씀)Liquibase👉 보통 Flyway를 간단히 붙이면 충분함.4. Flyway 설정 방법의존성 추가 (Gradle)dependencies { implementation 'org.flywaydb:flyway-core'}application.y..
-
[개발일지#015] 이미지 첨부 스토리지 연결하기 📂 첨부파일 → 스토리지 전환 과정 정리1. 기존 구조 (로컬 저장소)파일 업로드 시 서버 내 uploads/ 디렉토리에 저장.문제점:서버 재배포/스케일링 시 파일 유실 위험서버 디스크 용량 한계Render 같은 PaaS는 로컬 디스크가 휘발성이라 운영에 부적합2. 스토리지 서비스 선택Supabase Storage 사용S3 호환 API 제공Render와 별도 관리 가능Bucket 기반으로 이미지/파일 관리 용이3. Supabase Storage 설정1) 좌측 메뉴에 [Storage] 클릭2) 버킷 생성Storage → New Bucket 생성 (예: attachments) 3) Create storage bucket 입력Name of bucket : 이름을 정해줌Public buket : 공개적으로 써..
매월, 매년 회고를 씁니다.
-
개발자 5년 회고 와 와 와... 내가 진짜 개발자 한지 5년 넘었다고?! 와 와 와 와 진짜 말도 안 돼 나 이제 주니어 아니라고?! 와 와 와... 상태 돌이켜 보면 지난 1년은 질풍노도의 시기였슴니다... 1년 차 2년 차 3년 차 등등 중에 으뜸이었습니다.그래도 해야겠지요 써야겠지요 회고여전히 뭘 써야 할지 모르겠고 작년 회고를 보면 부끄럽지만.... 여전히 씁니다 회고 2번의 퇴사와 2번의 이직을 했습니다그것도 1년 사이예요 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 4년 회고에서는 이직을 실패했다고 썼는데 뭐 제 기준 이직을 성공한 건 아니지만 어쨌든 이직을 하긴 했습니다.4년간 정들었던(정말..?) 회사를 퇴사하고 규모는 더 작지만 서버부터 개발까지 전반적으로 다룰 수 있는 곳으로 이직했습니다 기대와 동일하게 백엔드만 집중할..
-
2026년 8월 회고 들어가는 글나의 지난 6~7월 회고는 5년 간 써왔던 많은 회고 중에 가장 빈약하고 가장 우울한 회고였던 것 같다. 6월엔 여러 가지 개인사정이 겹쳤고 그 여파가 7월까지 이어졌다. 5년 간 개발을 업으로 삼으면서 전혀 우울하지 않거나 무기력하지 않았던 것은 아니었는데 그때마다 오히려 무언가를 더 하려고 했던 것 같다. 그게 무조건 좋았다거나 나빴다는 건 아니고 이번 6~7월에는 그럴 여력조차 없었던 두 달이었다. 원래도 생각이 많은 나지만 더 많은 생각들을 하게 했고, 무언가를 깨달았고 또 무언가 다시 시작할 원동력이 생겼다. 극 계획충 답게 다시 계획을 세웠고 작지만 하나씩 꾸준히 해나가고 있다. 그러니까, 이번 달은 그 시작의 첫 1개월의 기록. [개발분야]오랜만에 인강 완강 그리고 아직도 듣고 있..
-
2026년 7월 회고 날이 정말 정말 덥다. 7울 초까지 장마라고 칭하기 애매한 강수량과 습한 날씨들이 짧게 지속되더니 이제는 ‘드디어 여름이 왔구나’ 생각이 들만한 더위가 시작 되었다.제대로 된 여름이 찾아온 지금 나는 7월 한 달간 열심히 일만 했던 것 같다. 그리고 동시에 무기력 했다.‘우울감’과 ‘무기력함’은 내 인생에서 뗄레야 뗄 수 없는 지독한 감정들 중에 하나라 익숙하지만 7월은 특이하게도 정말 일을 열심히 했고, 그와 동시에 무기력했다. ‘열심히’와 ‘무기력’은 서로 상충되는 말임에도 불구하고 6월에 개인적으로 힘든 일들이 겹치고 그 여파가 7월까지 간탓인지 나에게는 이 두 단어가 일맥상통한 참 멜랑꼴리한 한 달이었다.그리고 7월 말이 된 지금, 나는 다시 앞으로 나아갈 힘이 충전되었고 8월부터는 내 방식대로..
읽은 책에 대한 이야기를 합니다.
-
세번째 읽는, 함께 자라기 : 애자일로 가는 길 (김창준) 책제목 : 함께자라기저자 : 김창준출판사 : 인사이트야생학습협력적이며, 비순차적이고 자료에 한정되지 않으며 명확한 평가를 하지 않는다. 또한 정답은 없으며 목표가 불분명하며 바뀌기도 한다. 이 책에서 말하는 '경력'이란?초급인지 아닌지만 구분해 내는 수단.초급이 아니라면 오히려 경력은 잘못된 정보일 수 있다.경력으로 채용여부나 임금여부를 판단하는 것은 편의적, 관료주의적이며 오히려 조직에 손해이다. 애자일 피드백을 짧은 주기로 얻는 것불확실성이 클 때 우리가 어떻게 해야 하는지 고민한 결과물 1만시간의 법칙 : 자신의 기량을 향상시킬 목적으로 반복적으로 하는 수련 = 의도적 수련자기 계발은 복리로 돌아온다 (*** 내가 가장 좋아하는 말 ***)부트스트래핑 : 자기가 신은 신발에 달린 끈으로 들어올려 ..
-
소프트웨어 장신 (산드로 만쿠소) - 장인정신을 향하여 책이름 : 소프트웨어 장인저자 : 산드로 만쿠소출판사 : 길벗애자일 정신빠르고 빠른 짧은 피드백 루프를 통해 올바른 일을 하는지 점검하는 과정팀원의 역할은 지시 받은 일만 하는 것이 아니라, 비지니스와 고객창출에 개발자들이 직접 참여하는 것이 중요코드를 잘 작성하는 것은 프로페셔녈이 가져야 할 최소한의 요건이며, 고객의 만족이 최우선이 되어야 한다.완전한 애자일 전환이란 절차과 도구의 도입 뿐만 아니라 기술적인 탁월함 (= 개발자의 프로페셔널) 모두 함께 있어야 한다.변화와 싸우는 것이 아니라 변화 자체를 내제화 한 것.애자일 방법론이 품질 상태에 대해 알려주진 않기 때문에 소프트웨어 장인 정신이 이 부분을 보완해준다. 소프트웨어 장인 정신개발자가 선택한 커리어에 책임을 지고, 지속적으로 새로운 도구와 ..
-
그림으로 이해하는 서버 구조와 기술 (요코타카즈키, 엔도유키) / 쉽게 설명해주는 기술서적 보는게 얼마 만인가. 책제목 : 그림으로 이해하는 서버 구조와 기술저자 : 요코타카즈키, 엔도유키출판사 : 길벗 길벗 리뷰어 참여로 보게된 책인데 사실 이 책을 예전부터 사고 싶어서 리뷰어를 내가 신청했음; (길벗에서 제공받았습니다.) 그래서 리뷰어라서 쓴다기보다는...리뷰도 쓰고 책도 보고....일석 이조 아니냐고....요즘 서버 & 인프라 공부하고 싶은데 나는 개발자여도 서버 & 인프라 쪽은 잘 모르는 상태라 그런지 책들이 나에게 너무 어렵거나 너무 방대하거나 너무 국소적인 부분이 있어서 책고르는데 어려움이 있었던 상태에서 보게 된 책. 일단 쉽다... 정말 그림으로 이해하기 쉽게 되어있다. 마치 예전에 수학의 정석, 개념원리 보다가 뭔말인지 몰랐는데 완자봤더니 설명 잘되어 있어서 눈이 트이는 그런 느낌이었음.그리고..
가장 조회가 많은 글입니다.
-
개발자 5년 회고 와 와 와... 내가 진짜 개발자 한지 5년 넘었다고?! 와 와 와 와 진짜 말도 안 돼 나 이제 주니어 아니라고?! 와 와 와... 상태 돌이켜 보면 지난 1년은 질풍노도의 시기였슴니다... 1년 차 2년 차 3년 차 등등 중에 으뜸이었습니다.그래도 해야겠지요 써야겠지요 회고여전히 뭘 써야 할지 모르겠고 작년 회고를 보면 부끄럽지만.... 여전히 씁니다 회고 2번의 퇴사와 2번의 이직을 했습니다그것도 1년 사이예요 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 4년 회고에서는 이직을 실패했다고 썼는데 뭐 제 기준 이직을 성공한 건 아니지만 어쨌든 이직을 하긴 했습니다.4년간 정들었던(정말..?) 회사를 퇴사하고 규모는 더 작지만 서버부터 개발까지 전반적으로 다룰 수 있는 곳으로 이직했습니다 기대와 동일하게 백엔드만 집중할..
-
최근 2년간 이직 준비하면서 느낀 요즘 채용시장 꽤 오랜 시간 이직을 준비하면서 요즘 취업시장(개발직군 한정)이 크게 변화됨을 체감하고 있다. 이직을 준비하는 과정에서 느꼈던 것들을 적어보는 개인적인 이야기들.참고로 나는 비전공자 출신 개발자(마케터 한 6년 하다가 때려 침)로 최근 2년간 이직을 준비했고 1년 간은 가열하게 이직에 돈과 체력과 노력을 쏟아부었음. 알고리즘 코딩테스트는 수없이 봤고, 과제 테스트, 라이브 코딩테스트, 인적성, 면접 등등 중소기업, 대기업 할 것 없이 2년 간 참 많은 채용 프로세스를 경험하고 희로애락…(대부분 노, 애였던 거 같긴 하지만 ^^)을 경험한 케이스……결과는 묻지 마십쇼 입에 풀칠은 하는 정도로 삽니다…….들어가기 전에진짜 개인적인 생각이라서 본인의 경험과 다를 수도, 제가 틀릴 수도그렇다면 미리 죄송함니다…..
-
[개발일지 #011] Oauth 로그인 구현 (구글) 🎯 오늘의 목표Oauth 로그인 구현 (구글) ⚙️ 진행한 작업Oauth 로그인 구현 (구글)🛠️ 개발내용✅ Oauth 로그인을 도입하는 이유장점설명🔑 로그인 개발/유지보수 부담 감소비밀번호 저장, 해싱, 변경, 분실 처리 로직이 없어도 됨🪪 신뢰성 있는 사용자 정보 제공구글, 네이버 등에서 직접 검증된 정보(email 등)를 제공📱 소셜 연동 쉽게 구현 가능로그인 + 프로필 불러오기 + 인증 절차까지 한 번에 가능👌 사용자 진입 장벽 낮음사용자는 회원가입 없이 "구글로 로그인"으로 빠르게 진입🔒 보안적으로 우수함인증/인가를 제공업체(Google 등)에게 위임 → 우리가 직접 비밀번호를 다루지 않음🌍 다양한 플랫폼과 연동하나의 인증 방식으로 웹, 모바일, 외부 API까지 모두 대응 가능위와..
최신 글 입니다.
-
내게 남은 사랑을 드릴게요 (이유리) 책제목 : 내게 남은 사랑을 드릴게요작가 : 이유리출판사 : 민음사3개의 이야기로 이루어진 단편생각보다 무겁지도, 그렇다고 또 너무 가볍지도 않은 가을 날씨 같은 온도의 글2개의 사랑이야기와 하나의 이상한(?)이야기로 이루어졌다생각보다 글이 괜찮아서, 이유리 작가의 도 한 번 읽어보고 싶어진다.
-
개발자 5년 회고 와 와 와... 내가 진짜 개발자 한지 5년 넘었다고?! 와 와 와 와 진짜 말도 안 돼 나 이제 주니어 아니라고?! 와 와 와... 상태 돌이켜 보면 지난 1년은 질풍노도의 시기였슴니다... 1년 차 2년 차 3년 차 등등 중에 으뜸이었습니다.그래도 해야겠지요 써야겠지요 회고여전히 뭘 써야 할지 모르겠고 작년 회고를 보면 부끄럽지만.... 여전히 씁니다 회고 2번의 퇴사와 2번의 이직을 했습니다그것도 1년 사이예요 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 4년 회고에서는 이직을 실패했다고 썼는데 뭐 제 기준 이직을 성공한 건 아니지만 어쨌든 이직을 하긴 했습니다.4년간 정들었던(정말..?) 회사를 퇴사하고 규모는 더 작지만 서버부터 개발까지 전반적으로 다룰 수 있는 곳으로 이직했습니다 기대와 동일하게 백엔드만 집중할..
-
[홍보글] 드디어 KNOU-CBT가 오픈했습니다! 들어가는 글이번 포스팅은 홍보글입니다. 제가 최근에 사이드프로젝트 하나를 런칭?출시?하게 되어서 프로젝트에 대해서 홍보 겸 설명을 할까합니다 어떤 사이드 프로제트 인가요?방통대 기출문제를 웹에서 쉽게 풀어보고 채점까지 할 수 있는 사이트입니다. 왜 만들게 되었나요?제가 방통대 재학시절에 기말시험 준비를 할 때 각 강의 자료실에 있는 기출문제를 다운받아 풀면서 준비를 많이 했었는데요. 파일을 인쇄해서 풀면 매번 답지를 따로 적어서 채점에야 여러번 풀 수 있어 불편했고, 또 아이패드로 옮겨서 풀자니 채점할 때가 너무너무 불편하고 귀찮았습니다. 이 역시도 여러번 풀려면 쉽지 않았고요. 그래서 방통대 기출문제를 웹에서 쉽게 풀고 채점할 수 있는 사이트가 있었으면 했어요. 그래서 만들게 되었습니다. 어떻게 이용..
728x90
320x100