구글 머신러닝 개발자
IBM 소프트웨어 & AI 개발자
2004년생. 링크드인의 기술 관련 영향력 있는 인물 상위 25명 중 한 명으로 선정되었으며, 컨퍼런스, 대학 및 국제 기업에서 전 세계 200,000명 이상의 임원, 학생 및 개발자를 대상으로 강연을 진행했다. [Tanmay Teaches]라고 불리는 그의 유튜브 채널에서 모든 사람들과 그의 연구와 지식을 공유하고 있다.
[백엔드를 위한 Go 프로그래밍]은 모든 개발자가 Go 프로그래밍 언어에 더욱 쉽게 접근하고 이해할 수 있도록 돕기 위해 만들어진 책입니다. Go는 모던 백엔드 개발을 위해 구현된 언어라고 할 수 있습니다. 무어의 법칙이 한계에 이른 오늘날에는 컴퓨터의 성능이 계속 좋아지리라 보기 어렵고, 따라서 우리는 엄청나게 최적화된 소프트웨어 스택을 실행하는 대규모 분산시스템에 적응해야만 합니다.
근본적으로 서로 다른 하드웨어가 함께 동작하는 분산시스템은 소프트웨어 세계에 혁신과 변화를 일으키도록 했습니다, 그 결과 요즘 소프트웨어는 거대한 모놀리식 디자인에서 점점 벗어나고 있습니다. 작게 나누어진 마이크로 서비스들이 모여 하나의 시스템을 구성하고 있고, 서로 다른 프로젝트에서도 많은 코드를 재사용하고 권한을 위임하여 예전보다 오류를 최소화하고 있습니다.
소프트웨어 세계가 발전함에 따라 이런 새로운 패러다임에 맞는 인프라 수요가 늘어났고, 이 수요를 충족하기 위해 완전히 새롭게 개발한 프로그래밍 언어인 Go가 만들어졌습니다. Go는 코드 크기가 작고 이식성까지 놓은 데다가 컴파일 시간은 엄청나게 빨라 마이크로 서비스 기반의 소프트웨어를 개발할 때 굉장히 편리한 언어입니다. 거기에 대해 강력하면서 동시성을 쉽게 적용할 수 있도록 만들어진 고루틴이나 채널 등 다른 어떤 언어도 따라올 수 없는 특별한 기능도 준비되어 있습니다.
게다가 Go는 쿠버네티스, 도커, 코크로치DB 같은 백엔드 개발을 위한 많은 인프라 서비스를 지원하는데, 이렇게 이미 잘 만들어진 대중적인 툴들을 이용할 수 있다는 점은 엔터프라이즈 레벨의 백엔드 개발을 위한 대규모 오픈소스코드들에 더 손쉽게 접근할 수 있음을 뜻하기도 합니다.
이 책을 통해 여러분이 go를 문제 해결 상자의 도구로 활용할 수 있는 역량을 갖춘 Go 개발자가 되길 바랍니다. 더 좋은 점은 이 도구는 기존에 경험앴던 다른 도구들과 달리 엔터프라이즈 레벨의 문제를 처리하는 데 적용할 수 있다는 점입니다. 따라서 Go는 여러분이 앞으로 어떤 코드를 작성할 때 싶은 가장 첫 번째 후보가 될 것입니다.