이것이 스프링 부트다 with 자바 - JPA와 AWS, 챗GPT까지 스프링 부트를 활용한 백엔드 프로젝트 실습서 | 저자 직강 유튜브 강의, 연습문제 제공 이것이 시리즈
김희선 지음 / 한빛미디어 / 2025년 6월
평점 :
장바구니담기


※ 한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다.

이번 도서 후기는 자바 개발자라면 한번 즈음 공부하고 사용해본 스프링 부트에 관한 내용을 다루는 책이다.

이 책은 최신 스프링 부트 3버전의 내용을 다룰 뿐만 아니라 다른 여러 스프링 부트를 다루는 책과 달리 도커와 AWS를 사용하는 방법과 함께 AI의 기능을 스프링 부트에서 사용할 수 있는 가이드와 함께 예시 코드를 통해 실무 개발을 하는 것처럼 실습을 해볼 수 있는 최신 기술까지 도입하고 공부해볼 수 있는 내용을 다룬다.

총 10장으로 구성된 이 책은 스프링 부트를 처음 공부해보는 분들을 위해 스프링 프레임워크가 개발 환경에 어떠한 영향을 미쳤는지, 또한 스프링 프레임워크와 스프링 부트의 차이가 정확히 어떤 부분이 있는지에 대한 내용을 다룬다.

특히 스프링 부트를 처음 공부해볼 때 어떤 핵심 개념과 기능을 이해해야 하는지에 대한 내용 설명과 함께 예시 코드들도 함께 설명에 다루기 때문에 처음 공부해보는 분들이 제대로된 개념과 이해를 도울 수 있도록 한다.

핵심 기초 개념 설명 이후에는 스프링 부트를 실무에서 처럼 개발해보기 위한 개발 환경을 구축하는 각 단계를 다룬다.

기본이 되는 JDK 설치부터 개발하기 위한 IDE 툴인 인텔리제이 설치와 함께 프로젝트를 생성하고 셋팅하는 방법 이후에는 데이터를 관리하기 위해 데이터베이스와 연동하는 방법을 설명하기 앞서 MySQL 데이터베이스를 설치하고 실제 데이터를 조회하고 사용해볼 수 있는 데이터베이스 툴을 설치하는 방법도 친절하게 소개한다.

특히나 각 단계를 하나하나 이미지로 설명하고 있어서 설치하거나 셋팅하는 방법을 어렵지 않게 따라해볼 수 있다.

뿐만 아니라 프로젝트를 시작하기에 앞서 알아두어야 할 롬복의 사용방법이나 애플리케이션 내 설정 파일 관리 및 로그 출력 부분에 대한 기본적인 내용도 친절히 안내하고 있어 처음 공부해보는 독자들도 선수 지식을 쌓을 수 있게 책의 구성되어 있다.

이후에는 실무에서 개발하는 것과 같이 데이터베이스를 프로젝트에 연동하기 위한 방법과 함께 어떤 원리로 연동이 되는지에 대한 내용도 설명하고 있어 각 요소와 핵심 개념을 정리해볼 수 있다.

특히나 이 부분은 그림과 예시 코드들로 자세히 설명되어 있어 어렵지 않게 이해할 수 있도록 한다.

특히나 데이터베이스에 접근할 때 많이 사용되는 Mybatis 외에 SQL 구문 없이도 데이터를 조작할 수 있는 최근 많이 사용되는 JPA 기술도 설명하고 있어 데이터베이스의 기능을 연동하고 사용할 수 있는 다양한 기술도 이해하고 실제로 사용해볼 수 있도록 구성되어 있다.

뿐만 아니라 내/외부 서비스들과 API를 통한 연동을 위한 REST API에 대한 개념 이해와 이를 직접 사용해볼 수 있는 예시코드들도 제공하고 있다.

이러한 핵심 기능을 다룬 이후에는 실제로 게시판을 개발하면서 다양한 스프링의 기능도 이해하고 사용해볼 수 있도록 하며 이후에는 실제로 서비스를 해볼 수 있도록 애플리케이션을 jar나 war의 빌드 결과물로 만들고 이를 톰캣, AWS, 도커 환경에서 배포할 수 있도록 하기 위한 선수 지식과 배포 방법도 다룬다.

이후에는 가장 궁금했던 부분인 OpenAI를 통한 스프링 부트 내에서 AI 기능을 직접 사용해볼 수 있는 부분도 설명하고 있어 단순 핵심개념과 코드 설명 외에도 최신 기술까지의 내용도 스프링 부트 안에서 도입해볼 수 있도록 한다.

이로 인해 스프링 부트의 기초 개념부터 고급까지 실무에서 다룰 수 있는 폭넓은 내용을 이 책 한 권이 모두 다루고 있단 점이 이 책의 가장 큰 장점으로 생각한다.

백엔드 개발의 전반적인 개발의 이해와 경험을 해보고 싶은 모든 분들에게 추천한다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
자바 최적화 - 클라우드 시대의 자바 성능 튜닝을 위한 실용적인 기법, 2판
벤저민 J. 에번스 외 지음, 오지영 외 옮김 / 한빛미디어 / 2025년 5월
평점 :
장바구니담기


※ 한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다.

이 책은 자바 애플리케이션을 좀 더 잘 운영하고 관리하기 위한 최적화된 기술을 배울 수 있는 책이다.

대다수의 자바 개발자들이 프로그래밍을 위한 언어 사용법을 배우지만 프로그래밍 외에 좀 더 안정적이고 최적화된 운영을 위한 방법을 직접적으로 배울 수 있는 방법은 드물다.

처리량과 지연 시간, 수용량과 활용도 뿐만 아니라 확장성과 효율성 그리고 성능 저하 같은 기본적인 성능상의 요소들이 왜 중요한지 파악하는 것이 중요하고 이 요소들이 동시에 최적화하기는 어렵기 때문에 성능 최적화를 위한 올바른 목표를 설정하고 추구하는 것이 중요하다.

이런 자바의 성능을 튜닝하는 실용적인 기법들을 이 책에서 다룬다.

총 15장으로 이루어진 총 5가지 주제를 다룬다.

가장 처음으로 다루는 주제는 여러 정의를 통한 자바 성능을 최적화하기 위한 개념을 다지고 성능을 논할 때 사용할 프레임워크를 수립하는 부분도 다룬다.

이후에는 자바 성능에 대한 내용을 다룰 때 자주 등장하는 문제와 함정을 살펴보는 과정도 다룬다.

특히 첫번째 장에서는 잘못된 자바 성능을 최적화하기 위한 기본 핵심을 다루기 때문에 더 좋은 성능을 위한 엔지니어링을 위한 여러 내용을 집중적으로 다루기 때문에 이러한 성능 문제가 발생했을 때 이를 폭넓게 이해하고 해결할 수 있는 기반의 내용을 다루기 때문에 첫장에서 다루는 내용은 꼼꼼히 읽고 이해할 수 있도록 해야한다.

이후에는 자바의 성능 테스트 방법론을 다루는데 이 부분은 실무를 하면서 많이 접할 수 있는 테스트의 종류이다.

각 테스트별로 어떠한 성능의 종류를 테스트하기 위한 것인지에 대해 다루기 때문에 특히나 실무에서 접할 수 있는 내용이므로 성능 테스트 방법론의 내용을 정리해보는 것도 추천한다.

이후에는 자바 개발자라면 알고 있을 내용인 JVM에 대한 내용을 다룬다.

JVM의 구성 요소들과 함께 이를 모니터링하기 위한 도구를 소개하며 이후에는 JVM의 구성요소인 GC, JIT의 각 요소에서 자바의 성능을 좌우하는 부분에 대한 내용과 함께 이를 잘 다루기 위한 방법을 다룬다.

이를 통해서 왜 성능이 느려지는 지에 대한 원인을 파악할 수 있고 이를 해결할 수 있는 방안들을 생각해볼 수 있다.

GC와 JIT를 다룬 이후에는 하드웨어의 관점에서의 하드웨어를 이루는 메모리와 캐시, 프로세서, OS에 대한 기본 이해를 통해 애플리케이션 성능에 영향을 미치는 하드웨어 측면에서의 안정된 사용 방법을 이해할 수 있다.

이후에는 클라우드 플랫폼 환경에서 자바의 성능을 효과적으로 관리하는 최적화 방법을 다룬다.

클라우드 플랫폼 환경에서 자바 애플리케이션을 잘 운영하기 위한 가상화 고려사항과 함께 클라우드 환경의 이미지와 컨테이너의 기초 내용도 다루고 있다.

또한 클라우드 네이티브의 스택의 중요 요소인 네트워킹은 서비스를 검색하고 트래픽을 라우팅하는 중요한 고려사항을 다루고 있다는 점에서 클라우드 플랫폼 환경에서 이해할 기본 내용과 핵심을 이해해야 이후에 다루는 내용을 이해할 수 있다.

이러한 기본 내용 이후에는 클라우드 환경에서 자바 애플리케이션을 배포하기 위한 구성요소들과 함께 배포의 원리와 방식을 소개한다.

클라우드 환경에서 블루/그린 배포, 카나리 배포는 한번쯤 들어보았을 배포 전략이다.

이런 배포 기술의 원리와 각각의 특징, 장/단점을 통해 서비스와 상황에 맞는 배포 전략을 이해할 수 있다.

이후에는 모니터링 시스템의 연장으로 더 확장되고 일반화된 모니터링 기술을 넘어 새로운 기능을 제공하는 관측성에 대한 내용을 다룬다.

관측성은 시스템의 내부 상태를 외부에서 얼마나 잘 추론하는 가라는 질문에서 시작이 되는데 이를 통해 장애 상황을 해결하는 과정 뿐만 아니라 다양한 활용 가능성을 가지고, 컨테이너 환경과 같은 새로운 운영 방식에서 시스템이 업그레이드 되거나 유지되기보다 문제의 상황이 발생되면 안정적인 버전으로 롤백하거나 새로운 빌드로 전환하는 방식에서 변화된 서비스의 운영 방식 뿐만 아니라 확장의 규모에서 문제를 해결하도록 하는 내용을 다룬다.

후반부에서는 가상 스레드와 분산 패턴을 통해 클라우드 규모의 동시성에 관한 내용을 다룬다.

동시성은 특히나 서비스가 확장되고 복잡해지면 더더욱 중요해진 기술이다.

동시성에 대한 개념과 함께 자바 영역에서 제공하는 동시성 라이브러리들은 실무에서 자주 다루는 부분들이다.

특히나 자바의 동시성과 비동기 실행 방식, 가상 스레드를 다루는 내용은 어려울 수 있지만 분명 실무에서 자주 다루는 서비스 로직의 한 부분이기 때문에 어렵더라도 이들의 사용 원리를 이해하기를 추천한다.

마지막 장에서는 자바의 JVM의 미래를 생각하는 내용으로 마무리를 짓는다.

복잡해지는 서비스를 개발/운영하기 위해 자바의 관점 뿐만 아니라 클라우드 환경에서 자바 애플리케이션을 안정적으로 운영하기 위한 기법들을 다룬다는 점에서 개인적으로 많은 도움을 받았다.

서비스를 운영하면서 성능 관점에서 최적화되지 않은 부분들을 접할 수 있었다.

그때마다 가장 먼저 프로그래밍 관점에서 최적화한 부분도 있지만 이외에 하드웨어와 인프라 관점에서도 성능을 개선한 부분도 있었다.

다양한 관점에서 자바 애플리케이션의 성능을 최적화하기 위한 특히나 클라우드 환경에서 최적화하는 방법을 다루고 여러 지표와 사례를 통해 상황별 해결 방안을 이해하고 최적화하는 방법을 익힐 수 있었다.

앞서 말했듯이 어려울 수 있는 내용들도 많지만 프로그래밍 관점 외에 더 확장된 영역에서 서비스를 안정적으로 운영하기 위한 방법을 이해할 수 있기 때문에 어렵더라도 완독하기를 추천한다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
Do it! 클린 프로그래밍 - 코드만 짜던 당신, '진짜' 개발자가 된다! Do it! 시리즈
김종관 지음 / 이지스퍼블리싱 / 2025년 6월
평점 :
장바구니담기


이 책은 책의 제목처럼 코드를 깔끔하게 작성하는 방법과 함께 다른 개발자 동료와 협업이 가능한 개발자가 되기 위한 방법 및 클린한 설계를 위한 프로그래밍 원칙들을 배울 수 있는 책이다.

시중에 이런 클린 프로그래밍과 관련된 책이 많이 출간되어 있지만 이 책은 개발을 이제 시작하려는 분들이나 신입 개발자분들에게 초점이 맞추어진 책이어서 핵심 내용에 대해 어렵지 않게 설명되어 있고 무엇보다 각 챕터를 시작할 때 왜 이런 내용을 다루는지에 대한 내용을 소개하고 후반부에서 이런 핵심 내용을 정리해주고 있어서 다시 한번 내용을 되새길 수 있도록 구성되어 있다.

그렇기 때문에 이 책을 읽는 누구나 어렵지 않게 내용을 이해할 수 있다.

이 책은 총 네 가지 챕터로 이루어져있다.

첫번째 마당에서는 클린 코드 개발자 되기라는 주제를 다룬다.

클린 코드를 왜 지켜야 하는지에 대한 내용을 먼저 다루기 때문에 소프트웨어를 개발하면서 코드의 가독성과 개발 생산성, 유지보수성을 향상하기 위해 개발자라면 반드시 준수해야 하는 중요한 사항임을 깨달으면서 시작한다.

이를 위해 클린 코드의 원칙과 기존 코드에서 발생하는 코드 스멜을 개선하기 위한 리팩토링과 함께 개선한 코드를 검증하기 위한 테스트 코드의 작성 방법도 다루고 있어 클린 코드를 위해 개발자가 어떠한 부분을 할 수 있는지에 대해서 배울 수 있다.

특히 나의 경우 첫번째 장에서 다루는 내용의 예시 코드를 나는 어떤 방식으로 바꿀지에 대해 먼저 생각해보고 책의 내용과 비교해보았다.

두번째 마당에서는 협업 가능한 개발자 되기라는 주제를 다루는데, 주 내용이 코드 리뷰에 관한 내용이다.

코드 리뷰는 최근 개발 과정 중에서 중요하다고 생각되는 단계 중 하나이다.

코드 리뷰는 작성한 코드를 다른 동료 개발자들의 시각에서 검토하고 오류 사항이나 코드 스멜을 찾아내는 프로세스로 코드의 품질 향상에 많은 도움이 된다.

내가 현재 근무중인 회사에서도 코드 리뷰를 진행하고 있다.

나뿐만 아니라 다른 개발자들은 처음에는 코드 리뷰를 많이 부담스러워한다. 일정이 빠듯한 점도 있지만 내 코드를 다른 동료들에게 평가를 받는다는 부담감 뿐만 아니라 귀찮기도 하지만 코드 리뷰를 통해 다른 개발자의 코멘트로 코드의 품질이 향상이 되기도 하고 리뷰이도 개발 역량을 높일 수 있는 이점을 많이 갖고 있다.

코드 리뷰를 하는 방법과 함께 이를 효과적으로 수행하는 방법을 통해 다른 개발자와의 협업의 한 부분인 코드 리뷰를 효율적으로 하는 방법을 알 수 있다.

세번째 마당에서는 좋은 구조를 만드는 개발자 되기라는 주제로, 이 책에서 중요하다고 생각한 챕터이다.

객체 지향 프로그래밍이라는 용어를 한번쯤 들어보았을 텐데 이 객체지향 프로그래밍의 특징인 추상화와 상속, 그리고 다형성과 캡슐화를 통해 절차 지향 프로그래밍보다 코드의 확장성과 재사용성, 그리고 외부에서 추가 요청이나 기능 변경이 있을 때의 유연하게 대응할 수 있도록 하는 특징을 이해할 수 있다.

특히 많이 들어보았을 생성 패턴, 구조패턴, 행동패턴, MVC 패턴으로 나누어볼 수 있는 효과적인 디자인 패턴의 활용 전략들도 예시 상황과 코드를 통해서 이해할 수 있다는 점에서 클린 코드를 작성하기 위한 패턴의 구조를 이해할 수 있다.

특히 이 내용들은 면접 시에도 질문 내용으로 다룰 수 있는 내용들을 이해하기 쉽게 다루고 있어서 내용을 정리하고 예시코드도 이해하는 것을 추천한다.

다만 나는 디자인 패턴 내용의 서론에서 저자가 언급했듯이 "패턴병에 걸리지 말라"는 내용에 많은 공감을 했다.

주변에 개발자분들 중 처음 디자인 패턴을 배울 때 모든 부분을 패턴으로 해결하려는 분들을 많이 보았기 때문이다. 실제로는 좀 더 간단하게 해결 할 수 있는 부분인데도 디자인 패턴의 내용에 기반하여 해결하려고 하여 여러 애로새항을 경험한 적이 있었다.

저자의 생각처럼 나도 클린 코드의 기본은 간결하고 이해하기 쉬운 깨끗한 코드를 작성하는 데에 있기 때문에 이를 너무 남용하지 않아야 한다고 생각한다.

마지막 네번째 마당에서는 소프트웨어를 설계하는 개발자 되기라는 주제로 소프트웨어 프로세스 모델에 내용을 다룬다.

소프트웨어 프로세스 모델은 프로젝트의 전반적인 흐름을 이해하고 관리하는데 도움이 되고 각 단계에서 필요한 작업과 책임을 명확히하기 때문에 여러 이해 관계자들의 소통을 명확히 할 수 있다는 점에서 안정적이고 효과적으로 설계할 수 있다.

특히 UML은 이러한 의사 소통을 원활하게 하기 위해 시스템을 시각화하여 표현하게 하여 의사소통을 원활하게 해주고 개발자들이 이 UML만으로도 프로세스를 빠르게 이해할 수 있도록 도와준다.

그렇기 때문에 네번째 장에서는 UML을 작성하는 방법을 소개하는데 실무에서도 실제로 UML을 작성해야 하는 단계가 있기 때문에 이 부분도 꼼꼼히 읽는 것을 추천한다.

개발 프로세스에서 중요 핵심 내용들을 이 책에서 다루기 때문에 코드를 깔끔하게 작성하는 것을 넘어 품질 높은 코드를 작성하고 주변 동료 개발자들과의 협업을 원할하게 하는 방법, 그리고 시스템 설계에서 각 구조를 이해하기 위한 작업들에 대해서도 다루기 때문에 이 책의 제목처럼 클린 프로그래밍의 핵심 내용을 공부해볼 수 있다.

클린 프로그래밍은 개발자의 숙명이다.

클린 프로그래밍의 관심이 많은 개발자분들께 추천하고 기초 내용부터 이해하고 싶은 분들에게 특히나 추천한다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
멀티패러다임 프로그래밍 - 객체지향, 함수형, 명령형의 통합적 사고로 구현하는 소프트웨어 설계와 구현
유인동 지음 / 한빛미디어 / 2025년 4월
평점 :
장바구니담기


※ 한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다.

과거에는 함수형, 객체지향형이라는 언어를 각각 선택하여 각 언어의 체계를 사용하여 프로그래밍을 하였다.

하지만 이러한 방식의 사용이 멀티패러다임이라는 언어로 발전하게 되었다.

대부분 사용하는 언어가 객체지향형, 명령형, 그리고 함수형을 동시에 지원하게 되었다고 한다.

이런 언어가 객체지향형을 기반으로 시작되었고 여러 기능을 포함하여 다양한 기능을 제공하고 하나의 언어에서 멀티 패러다임을 지원하게 되었다.

이런 언어의 체계변화가 혼란스러울 수 있지만 이런 변화는 다양하게 조합하여 더 나은 코드를 작성할 수 있게 하였고 여러 문제를 해결할 수 있는 방식도 제공하게 되었다.

이 책은 이런 멀티패러다임이 언어를 확장하게 한 여러 기법들에 대한 소개와 함께 이러한 방법이 설계된 이유를 다루어 이해를 돕는다.

이후 타입스크립트로 예시 코드로 타입 추론과 함수 타입을 통해 코드이 안정성과 가독성을 높이는 방식으로 안전하게 코드를 작성하여 함수의 반환 타입을 자동으로 추론하는 내용을 다루며 고차 함수를 구성하는 패턴과 LISP 계열 언어로 코드와 데이터를 동일하게 취급하는 메타 프로그래밍의 장점을 소개한다.

뿐만 아니라 코드와 객체, 함수가 각각 제너레이터, 이터레이터, 그리고 LISP와 유사한 관계를 소개하여 명령형, 객체지향적, 함수형 접근 방식을 모두 가지는 프로그래밍 모델을 만들 수 있는 방식을 이해하도록 한다.

또한 코드와 데이터의 경계가 없는 프로그래밍 언어의 특징을 가지는 LISP를 통해 앞서 설명했듯이 코드와 데이터의 경계가 없는 특성을 반영하고 하스켈을 통해 함수형 프로그래밍의 이점을 이해하여 프로그래밍에 적용하는 방식을 배우고 안전하고 가독성을 높일 수 있도록 한다.

또한 가장 관심있게 읽었던 부분인 비동기 처리를 통해 애플리케이션의 성능과 응답을 높이고 이를 통해 네트워크 뿐만 아니라 I/O 처리의 큰 이점을 제공하는 중요한 기법을 다룬다.

이를 통해 Pomise로 여러 비동기 작업을 조합하고 제어하며 결과를 한번에 처리할 수 있도록 도와 비동기 작업의 흐름을 이해하도록 돕고 효율적으로 처리하는 방식을 배울 수 있다.

에러 처리 부분에 있어서도 에러의 원인을 찾도록 돕고 이를 해결하는 방식을 명확히 이해하도록 돕는다.

중반부에서는 앞서 이해한 프로그램 기법을 통해서 다양한 데이터 구조에서 코드의 일관을 유지하고 데이터의 각 처리 단계를 독립적으로 하도록 코드를 작성하게 하여 코드의 재사용성을 높여 여러 조건이 추가되거나 로직이 수정되어도 복잡하지 않게 수정할 수 있도록 도와 유지보수의 이점을 실제 데이터와 코드를 작성해봄으로써 이해하도록 돕는다.

이후에는 복잡한 문제 상황에서 상황에 따라서 객체지향, 함수형, 명령형 패러다임을 적절히 조합하여 사용하는 전략을 다루어 멀티 패러다임의 강점을 통해 복잡한 요건들을 쉽게 해결할 수 있도록 돕는다.

이 책은 나와 같이 객체지향 프로그래밍에 익숙한 개발자들이 함수형, 명령형 언어의 이점과 처리 방식을 정확히 이해하여 여러 상황에서 적절히 조합하여 정확히 사용할 수 있는 도와 멀티패러다임의 강력한 장점을 이해도록 돕는다.

타입스크립트로 설명되어 있어 사용해보지 않은 분들은 예시 코드의 이해가 조금은 어려울 수 있지만 각 챕터별 개념을 먼저 이해해보는 것도 추천한다.

다양한 서비스를 개발하면서 여러 상황에 따라 객제치향, 함수형, 명령형 프로그램 기법을 적절히 활용한다면 유연하고 완성도 있는 코드를 작성할 수 있을 것이라고 이 책을 읽으면서 생각이 들었다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
플랫폼 엔지니어링 - 개발과 운영을 아우르는 플랫폼 관리의 핵심 원칙
카미유 푸르니에.이언 놀런드 지음, 류광 외 옮김 / 한빛미디어 / 2025년 3월
평점 :
장바구니담기


※ 한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다.

이번 도서후기는 애플리케이션의 개발과 운영의 생산성을 높이기 위해 사용자의 친화적인 플랫폼을 만드는 기술에 대한 내용을 다룬다.

플랫폼 엔지니어링은 복잡한 서비스 환경에서 서비스를 이루는 여러 도구와 인프라, 그리고 개발의 작업흐름을 표준화하여 개발을 간소화하고 협업을 촉진하기 위한 즉 팀의 효율성도 함께 고려하여 개발 조직이 높은 수준의 성능을 유지하고 이에 대한 서비스의 고도화 과정에 대한 확장성과 신뢰성, 그리고 보안성을 보장하는 중요한 역할을 한다.

즉 이런 중요한 요소임에도 핵심적인 원칙들을 다루고 가이드를 받을 수 있는 정보들이 부족한 점이 있다. 하지만 이 책은 개발자의 경험 이상으로 전체적인 인프라를 아우르고 개발한 코드들을 운영 서비스에까지 배포한 이후 이를 운영하고 관리하기 위한 내용을 다룬다.

플랫폼에 대한 프로젝트의 착수와 이를 위한 조직의 구성 그리고 플랫폼 계획이 다른 여러 계획과 어떠한 점이 다른지에 대한 이해를 돕는다. 특히 팀에 대한 역할 정의와 여러 실무자들을 관리하는 내용도 다룬다.

플랫폼 엔지니어링에서의 팀의 주요 역할과 책임을 토대로 엔지니어링의 직급 체계와 방법을 소개하며 플랫폼을 제품처럼 다루어야 하는 이유를 토대로 이를 여러 실무자들에 맞는 조정 방법도 다룬다.

플랫폼을 제대로 만들기 위해 여러 실무자들이 어떠한 일을 해야 하는지 그리고 그에 대한 역할을 수행하기 위해 실천해야 하는 방법들이 어떠한 것이 있고 기술적인 구현 방법 이상으로 플랫폼 엔지니어링을 제대로 작동시키는 방법에 대한 소개를 단계별로 다룬다.

첫번째 장에서는 플랫폼 엔지니어링에 대한 개념을 다루는데 이 역할이 어떤 것인지 왜 필요한지 핵심적인 내용은 무엇인지 소개를 통해 독자들이 이해할 수 있도록 도와준다.

이후 플랫폼 영역에서 자주 접하게 되는 여러 문제들을 통해 이를 어떻게 해결해야 하는 지에 대한 내용을 다루고 운영과 실행 및 관행들을 설명한다.

이 책을 읽으면서 인상깊었던 부분은 아키텍처를 다시 새로 만들고 이를 위해 마이그레이션을 하는 실무적인 기술만 다루지 않고 기술 이외에 팀을 구성하고 서로 다른 입장에서 다른 동료들을 이해시키고 여러 실무자들이 나가야할 목표를 구체적으로 고민해볼 수 있도록 하는 부분이 기술적인 내용 뿐만 아니라 다양한 요소들에서 플랫폼 엔지니어링의 역할에 대해 폭넓은 이해를 도왔다.

나와 같이 플랫폼 엔지니어링 개념이 생소한 분들도 개념 이해를 도울 뿐만 아니라 이를 위한 여러 고려사항을 통해 플랫폼을 개발하고 이를 운영하기 위한 기술 리더 및 신입 개발자들까지 모두 도움이 될 내용이 많았다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo