전체보기

인프라 (Infra)

쿠버네티스 기초

실습 환경 설치VirtualBox v7.1.10컴퓨터 안에 또 다른 가상 컴퓨터를 만들 수 있게 해주는 가상화 소프트웨어Vagrant v2.4.1VirtualBox와 같은 가상화 소프트웨어를 더 쉽고 편리하게 관리해주는 개발 환경 구축 자동화 도구vagrant upTabby v1.0.207터미널 에뮬레이터실습어플리케이션을 배포하는 쿠버네티스의 단위 파드**(pod)**pod은 컨테이너의 집합으로 이루어진다그러나 대부분은 하나의 pod이 하나의 컨테이너로 이루어지는 경우가 많다pod은 한가지 일을 하는 걸 모아둔 것kubectl run nginx --image=nginxkubectl get podNAME READY STATUS RESTARTS AGEnginx 1/1 Runnin..

기타 (Other)

테스트 관련 읽어볼만한 글

https://www.integer.blog/practical-test-pyramid/을 번역했다. 테스트의 종류와 이유, 철학을 Java, SpringBoot, JUnit을 사용한 예시와 " data-og-host="www.integer.blog" data-og-source-url="https://www.integer.blog/practical-test-pyramid/" data-og-url="https://www.integer.blog/practical-test-pyramid" data-og-image="https://blog.kakaocdn.net/dna/MPiYC/hyZvwrX6GE/AAAAAAAAAAAAAAAAAAAAAMP_zkZf2uVGSrSzU4m-bMl-RJLQQCUoG2o383twFB9-/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1756652399&allow_ip=&allow_referer=&signature=LrPLKIUw9mrX8KOaW4Lo%2BQsnRDs%3D

CS

소프트웨어 공학 이론과 실제 5장 ~ 8장

C05 프로젝트 관리1. 프로젝트 관리 필요성프로젝트 실패의 원인: 소프트웨어 마인드 부족, 적절한 기술 활용 못함, 프로젝트 관리 기술 부족프로젝트 관리의 정의프로젝트 관리의 정의: 개발자 또는 개발 팀이 프로젝트 목표를 효율적이고 효과적으로 달성하는 데 필요한 내적 환경 요소를을 준비하고 유지하는 활동프로젝트 관리 단계프로젝트 관리 단계계획 수립: 개발 목적, 필요 자원, 정보의 흐름, 소요 인력, 산출물 정의자원 획득: 계획단계에서 예측한 장비/시설/ 확보, 팀 구성, R&R 지정실행: 수행 계획서에서 정의한 일정대로 개발, 진도 관리, 품질/리스크 관리모니터링: 계획한 베이스라인에 근거하여 진척도를 관리소프트웨어 개발의 가장 중요한 요소는 능력있는 개발 팀을 구성하는 것프로젝트 관리의 실패 원인부..

CS

소프트웨어 공학 이론과 실제 1장~4장

C01 소프트웨어 공학 개요소프트웨어 위기소프트웨어 개발이 어려운 이유의사소통의 문제시스템의 순차 특성개발의 의한 결과물프로젝트의 복잡한 특성개발자의 특성다양한 관리 이슈소프트웨어의 특성 정보분석 및 설계 40%, 개발 20%, 테스트 40%운영 유지 비용 67%, 개발 비용 33%소프트웨어 공학 기술의 적용IDE소프트웨어 프로토타이핑소프트웨어 개발 프로세스폭포수, 점진적, 프로토타입, 나선형, V 모델, 에자일소프트웨어 검사 및 검증소프트웨어 형상 관리소프트웨어 아키텍처소프트웨어 공학의 원리엄격성과 정형성관심사의 분할모듈화추상화변경의 예측일반화점진성명세화C02 소프트웨어 품질소프트웨어 품질의 중요성소프트웨어 품질 요소외적 품질 요소정확성: 소프트웨어가 명세서 대로 동작하는지신뢰성: 소프트웨어 사용시 오..

회고 & 기록

[Soma]소마 7월 회고

지난 시간 이야기또 한 달이 지났다. 지난 회고를 다시 보니, 막 교환학생이라는 새로운 도메인에 발을 들였고, ‘2주 피벗 룰’을 도입했던 시점이었다. 벌써 그게 한 달 전이라는 게 믿기지 않지만, 그만큼 많은 일이 있었다.교환학생늘 그랬듯, 시작은 정보 수집과 인터뷰였다. 교환학생 다녀온 사람들에게 연락하고, 커뮤니티도 뒤져보고, 직접 톡방에도 들어가봤다. 나무의 가지가 뻗어나가고, 가지치기를 하는 느낌이었다. 그런 과정에서 떠오른 가설이 하나 있었다. “사람들은 자신의 합격 가능성을 궁금해한다.”그래서 이 가설을 확인해보기 위해 계속 인터뷰를 잡고, 예전에 만났던 분에게 다시 연락도 해보았다. 또 기억에 남는 시도 중 하나는, 인스타그램에서 교환학생 관련 글에 좋아요 누른 사람들에게 무작정 DM을 돌..

카테고리 없음

오픈소스 기여하기 1: Bruno

계기오픈소스에 기여해보고 싶다는 생각이 본격적으로 든 건, 소프트웨어 마에스트로의 양홍주 엑스퍼트님이 작성하신 오픈소스 기여 블로그 글을 읽고 나서였다. 단 2주 만에 여러 오픈소스 프로젝트에 기여를 완료하셨다는 내용이 인상 깊었고, ‘정말 대단하다’는 감탄과 동시에 ‘이거 진짜 재밌겠다’는 생각이 들었다. 왜 Bruno 였을까?그래서 일단 무엇을 기여할 수 있을지부터 고민해보았다. 나는 평소에 파이썬을 가장 자신 있게 다루기 때문에, 자주 사용하는 파이썬 패키지들 위주로 GitHub 저장소들을 살펴보았다. 하지만 예상외로 이슈가 많지 않았고, 초보 기여자가 접근하기 쉬운 문제도 잘 보이지 않았다.그러던 중 평소에 사용하던 오픈소스 API 요청 툴인 Bruno가 떠올랐다. 저장소를 확인해보니 열려 있는 ..

파이썬 (Python)

Poetry 보다 좋은 uv

개요Python 프로젝트를 시작할 때, 환경 설정과 의존성 관리는 시간이 꽤 걸리는 작업이다. 그래서 Poetry등의 도구가 등장했고, pyproject.toml 기반의 명확한 구조와 편의성 덕분에 나 역시 Poetry를 애용해왔다.하지만 최근 등장한 새로운 패키지 매니저 uv를 써보고 나서는 생각이 바뀌었다.속도, 실용성, 그리고 확장성 면에서 uv는 Poetry의 상위 호환에 가깝다.이 글에서는 uv를 어떻게 실제로 개발 환경에서 활용할 수 있는지를 공유하려 한다.uvuv는 Astral에서 개발한 초고속 Python 패키지 매니저로, 기존의 pip, venv, pip-tools, setuptools, poetry의 기능을 대체하거나 통합한다.Rust로 구현되어 있어 패키지 설치 속도가 압도적으로 빠르..

서버(Server)

Firebase 예시로 살펴보는 JWT

JWT의 구조JSON Web Token(JWT)은 세 부분으로 나뉘어 있으며, .(dot)으로 연결됩니다.Header헤더(Header)에는 토큰의 타입과 서명 알고리즘 정보가 들어갑니다. 일반적으로 두 개의 필드를 포함합니다.{ "alg": "HS256", // 서명에 사용된 해싱 알고리즘 (예: HS256[SHA256], RS256) "typ": "JWT" // 토큰 타입 (항상 "JWT"), 생략가능}Payload페이로드(Payload)는 실제 토큰에 담길 정보(클레임, claim)를 포함합니다. 클레임은 name: value의 한 쌍으로 이루어집니다.클레임은 크게 세 종류로 나뉩니다:1. 등록된 클레임(Registered Claims)iss: 토큰 발급자 (issuer)sub: 토큰 제목 ..

서버(Server)

Firebase Authentication으로 Firestore 어드민 권한 관리하기

유저를 생성한다. await admin.auth().setCustomUserClaims(user.uid, { admin: true });를 통해 유저의 claim에 admin: true를 지정해준다. 이후 fireStore 보안 규칙 내에서rules_version = '2';service cloud.firestore { match /databases/{database}/documents { // 관리자 권한 확인 함수 function isAdmin() { return request.auth != null && request.auth.token.admin == true; } match /projects/{projectId} { allow read: if tr..

기타 (Other)

소프트웨어 마에스트로 역대 프로젝트 모음

혹시 예전에 진행했던 멋진 소마 프로젝트들을 다시 보고 싶은데, 서비스가 종료됐거나 만든 분들 연락처를 알 수 없어 답답했던 적 있으신가요? 저도 그런 경험이 너무 많았답니다. 😭 그래서 역대 소마 프로젝트들을 한눈에 모아보고 검색할 수 있는 사이트를 만들었습니다! https://soma.wibaek.com/ 소프트웨어 마에스트로 프로젝트소프트웨어 마에스트로 프로젝트 소프트웨어 마에스트로 프로그램의 프로젝트를 쉽게 탐색하세요soma.wibaek.com 이 사이트에서는 역대 소마 프로젝트들이 어떤 것들이 있었는지 편하게 둘러보고, 원하는 프로젝트를 쉽게 찾아볼 수 있습니다. 마치 소마 프로젝트 아카이브 같은 공간이라고 생각하시면 될 것 같아요! 혹시 사이트를 둘러보시다가 "어? 이 프로젝트는 없네?"..

Wibaek
'분류 전체보기' 카테고리의 글 목록