유료로 전환되는 도커 데스크탑 대체하기 (Mac M1)

아래 트윗처럼 도커가 가격 정책을 변경했다. Docker Desktop은 기업내에서 더이상 무료가 아니다. We're updating and extending our product subscriptions! New subscription tiers include Personal, Pro, Team, and Business. Details here: https://t.co/pyDetDKGjC #Docker #Subscriptions pic.twitter.com/Or8l6YoIUO— Docker (@Docker) August 31, 2021 Kubernetes에서 애플리케이션을 실행해야 한다면 데스크탑에 Kubern...

더보기

효율적으로 일하는 방법

일을 하다보면, 공식적으로 Jira에 관리되어 진행하는 Task와 Jira에서 관리하기 애매한 자잘한 Task들이 존재한다. 거기다가 회의 일정등 여러가지 것들을 복합적으로 관리해야 하는 상황에 부딪히게 된다. 오래전부터 나는 GTD(Getting Things Done)를 사용하여 Task를 구성하고 관리하고 있다. 쉽게 말하면 GTD 방법은 추적하고 있는 모든 것(진행중, 대기, 준비등)을 머릿속에서 제거하고 어딘가에 적어 두도록 구성하는 것이다. 어떤 일을 끝냈을 때, 다음에 해야 할 일을 기억하는데 에너지를 쏟을 필요가 없는 것이다. Email 사용 툴 : Outlook 대부분의 사람과 마찬가지로...

더보기

스토리 포인트 바르게 사용하기

스토리 포인트는 팀이 특정 기능을 개발하는데 필요한 노력의 양을 추정하기 위한 편리하고 효율적인 측정 기술이다. 스토리 포인트는 추정치이다. 추정은 예측을 하는 것이고 실제 사실과는 다를 수 있다. 애자일 및 스토리 포인트의 제작자도 정기적인 스프린트 기대치를 충족시키지 못했다고 한다. 경영진은 숫자, 약속, 속도등을 원하기에 스토리 포인트를 이용해 그들을 즐겁게 한거라고 한다. 결국 스토리 포인트를 추가함으로써 경영진을 행복하게 만드는 방법을 찾은 것이다. (믿거나~ 말거나~) 일반적으로 사용자 스토리가 주어지면 스토리의 복잡성을 숫자로 추정한다. 1-5 혹은 1-10 범위로 제한되며 때로는 큰 추정치로 작성...

더보기

Miniservices : 마이크로서비스에 대한 현실적 대안

마이크로 서비스가 현재 프로덕트를 만들때 가장 인기 있는 트렌드 중 하나라는데 이견이 없습니다. 하지만 모든 상황에서 마이크로 서비스가 적합한지에 대해서는 의문이 듭니다. 제가 블로그에 그동안 많이 언급했던 마이크로 서비스 아키텍처에 대해 마틴 파울러는 다음의 조건을 충족해야 한다고 언급합니다. 독립적으로 배포 가능하고 확장이 가능해야 함 단일 책임 느슨한 결합 하지만, 현실은 만만치 않습니다. Legacy가 있는 경우에는 더욱 그렇습니다. 오늘 소개하려고 하는 미니 서비스는 “마이크로 서비스 그룹이 작은 패턴으로 모인 것”과 같습니다. 위의 그림에 미니 서비스가 중간에 위치한 것을 알 ...

더보기

자율 주행이 시장에 미치는 영향

최근 자율주행 기술력을 확보하고 있는 회사와 함께 자율주행에 관련된 버티컬 서비스를 기획하고 구축하는 일을 진행하고 있다. 자율 주행 기술은 단계별로 분류된다. SAE(미국 자동차 공학회)에서 자동화 레벨을 2016년에 정의했다. 자율 주행 기술 단계 Level 0 (비자동화) 인간이 제어와 주행 책임을 갖는다. Level 1 (운전자 보조) 인간 + 시스템이 차를 제어하며, 주행 책임은 인간이 갖는다. (e.g 차간거리, 조항등 보조) Level 2 (부분 자동화) 인간 + 시스템이 차를 제어하며, 주행 책...

더보기

Serverless vs. Container 선택 가이드

이번 글에서는 서버리스와 컨테이너에 대해서 설명하고자 한다. 일을 하다보니, VM을 이용할 경우 유후 시간이 많을 때 비용이 최적화되지 못하다는 느낌이 많이 들었다. 서버리스는 서버 프로비저닝 및 유지 관리를 추상화하는 클라우드 아키텍처 모델이다. FaaS(Function-as-a-Service)라 불리며, 필요에 따라 코드를 실행하는 개념이고 실행 후 종료된다. 일반적으로 FaaS와 Container를 많이 비교하곤 한다. FaaS와 Container는 몇 가지 공통점이 존재한다. 분산 시스템 및 대규모 애플리케이션 개발에 특화 되어 있고 관리상의 번거로움을 제거하고 애플리케이션과 비즈니스의 가치에 집중하...

더보기

GraalVM 소개

“Graal”이라는 단어는 “Grail”을 의미하는 고대 프랑스어에서 유래되었다. GraalVM의 “VM”은 “JVM”내부에서 실행된다는 사실에서 비롯되었다. GraalVM은 Java 코드를 작성하고 실행할 수 있는 도구이다. Oracle에서 만든 JVM(Java Virtual Machine) 및 JDK(Java Development Kit)이고 애플리케이션의 성능과 효율성을 개선하는 목적으로 나온 고성능 런타임이다. GraalVM의 목표는 더 빠르고 유지하기 쉬운 컴파일러 작성, JVM에서 실행되는 언어의 성능 향상, 애플리케이션 시작 시간 단축, Java 에코 시스테에 다국어 지원 통합이다. GraalVM...

더보기

Spring Native 베타 소개

3/11일에 Spring Native 베타가 릴리즈되었다. GraalVM을 활용하여 Spring Java 및 Kotlin 애플리케이션을 네이티브 이미지로 컴파일하여 JVM에 구동되는 애플리케이션에 비해 시작 시간과 메모리 오버 헤드를 줄인다. JVM 실행 파일에 비해 네이티브 이미지는 시작 시간이 더 빠르고 (100ms 미만) 메모리 소비가 적다. 하지만 네이티브 이미지를 빌드하려면 JVM을 이용하는 빌드 대비 더 많은 시간이 필요하다. 이 프로젝트는 아직 베타 버전이긴 하지만, Spring Framework, Spring Boot, Spring Security 및 Spring Cloud를 포함한 대부분의 Sp...

더보기