2021.10.18

IDG 블로그 | 클라우드 아키텍처 제너럴리스트가 되는 방법

David Linthicum | InfoWorld
필자가 최근에 쓴 글 “좋은 클라우드 아키텍트는 스페셜리스트가 아니라 제너널리스트”가 몇몇 사람의 신경을 건드린 모양이다. 사실 필자는 오랫동안 클라우드 아키텍트는 클라우드 기반 기술만이 아니라 모든 기술을 알고 있어야 한다고 주장해 왔다.
 
ⓒ Dmitry Ratushny (CC0)

클라우드 아키텍트는 전통적인 엔터프라이즈 시스템 및 네트워킹, 보안, 거버넌스와 클라우드 기반 솔루션을 혼합해야 한다. 또한 이 모든 조각을 최적화된 방식으로 짜맞춰 비즈니스에 최고의 솔루션을 제공하는 방법을 알아야 한다.

많은 이들이 이 모든 기술을 제대로 이해할 수 있는 방법을 문의했다. 여기 간단한 조언과 시도해 볼 만한 접근법 몇 가지를 소개한다.

우선 제너럴리스트 아키텍트에는 두 종류가 있다.

첫 번째 그룹은 여러 단계를 거쳐 성장한 전문가로, 네트워크 엔지니어, 보안 전문가, 데이터베이스 어드민 등의 여러 직책을 가지고 있다. 이들은 클라우드 아키텍트가 정기적으로 다루어야 하는 많은 구성요소에 관해 넓고 다양한 경험과 지식을 보유하고 있다. 얻기 힘든 클라우드 제너럴리스트 지식을 가지고 있는 것이다.

두 번째 그룹은 처음부터 클라우드 일자리를 찾고 있으며, 클라우드 아키텍트가 되고자 한다. 보통은 수십 년이 아니라 몇 년 내에 원하는 목표에 도달하고자 한다. 과연 이들이 관련 기술의 모든 측면을 이해하는 뛰어난 클라우드 아키텍트가 되는 데 필요한 폭넓은 기술력을 빠르게 습득할 수 있을까?

가능하지만 훨씬 더 어려운 방법이다. 물론, 다음과 같은 몇 가지 지름길이 있다.

편안한 영역을 벗어나 새로운 것을 배운다. 필자는 경력 초기에 보안과 관련된 것은 모두 피했다. 그러다 좋은 보안은 모든 것, 데이터부터 애플리케이션, 컴퓨트, AI, 네트워킹 등등에 체계적이라는 것을 갑자기 깨달았다. 이후 필자는 더 나은 아키텍트가 되기 위해 보안과 그 개념, 그 기술을 이해하는 데 중점을 뒀다. 보안 공부를 업무 시간에 한 것은 아니었고, 이런 지식을 얻는 시간에 보수를 받은 것도 아니었다. 다른 신기술에 대한 지식도 마찬가지다. 만약 주도적으로 일을 만들어서 하는 사람이 아니라면, 이 방식은 적합하지 않을 수도 있다. 

AI나 데이터베이스, 네트워킹, 애플리케이션 개발 등 경험이 전혀 없는 영역을 배워야 한다. 클라우드 영역에서는 네이티브 클라우드 서비스에 대한 포괄적인 이해가 추가된다. 예를 들어, AWS와 마이크로소프트가 제공하는 클라우드 스토리지에 관해 비교 보고서를 작성할 수 있겠는가? 컴퓨팅이나 AI에 대해서는 어떤가? 많은 것의 기본을 이해할 수 있어야 한다.

성공적인 아키텍처와 혁신을 주도하는 패턴을 파악한다. 클라우드 아키텍처, 또는 일반적인 IT 아키텍처는 비즈니스 성공을 이끄는 기술을 최적의 상태로 구성하는 일이다. 여기서 핵심은 ‘최적’이다.

대부분 사람의 클라우드 아키텍처 접근법은 기존 아키텍처 패턴을 재사용하는 것으로, 보통은 단일 클라우드 서비스 업체의 솔루션을 이용한다. 필자는 아키텍처팀이 단일 퍼블릭 클라우드 솔루션을 추진하면 신경질을 내곤 한다. 이런 솔루션이 최적화될 가능성은 ‘제로’에 가깝다. 다시 말해, “돌아간다”고 할 수는 있겠지만, 낼 수 있는 최고의 성능으로 동작하지는 않을 것이다.

이런 일은 아키텍트가 단일 클라우드 서비스 업체 또는 한 종류의 기술만 알고 있을 때 일어난다. 예를 들어 보자. 만약 IT 담당자가 애플 아이폰에 대해서는 모든 것을 알고 있다면, 직원의 절반이 안드로이드를 사용할 때까지는 맡은 업무를 훌륭하게 해낼 수 있다. 일반적인 IT 담당자의 대응은 안드로이드를 배제하는 것이다. 직원들이 안드로이드를 이용해 아이폰보다 두 배의 업무 효율을 올릴 수 있다고 해도 그렇다. 만약 IT 담당자가 안드로이드를 구체적으로 알지 못한다면, 기업의 안드로이드 사용에 대해 좋은 제안을 할 수 있는 역량이 없는 것이다. 단순화시킨 예이지만, 여기에 핵심이 있다. 이 IT 담당자는 자신이 무엇을 모르는지를 알지 못한다.

좋은 제너럴리스트는 원하는 비즈니스 솔루션을 위한 최적의 기술과 구성을 위해 넓은 그물을 던진다. 모든 클라우드 서비스의 장점과 이기종 클라우드 솔루션을 배치하는 단점을 잘 알고 있다는 의미이다. 보통은 이렇게 멀티클라우드가 된다.

다른 사람의 지식을 이용한다. 클라우드 컴퓨팅을 위한 최적의 아키텍처를 찾는 데 필요한 일반화된 지식에 중점을 둔 교육과 서적이 있다. 필자도 클라우드 아키텍처 교육 과정을 운영하고 있으며, 서적으로는 마이클 카비스의 ‘Architecting the Cloud.’를 추천한다.

대학도 기본 및 고급 클라우드 아키텍처에 대한 강의를 제공하지만, 단일 클라우드에 중점을 둔 과정은 주의해야 한다. 여러 기술과 여러 서비스 업체, 여러 솔루션 패턴을 제시하는 과정이어야 한다. 그렇지 않으면, 클라우드가 어떻게 동작하는지를 이해하는 데는 도움이 되겠지만, 뛰어난 클라우드 아키텍트가 알아야 할 것 중 일부만 가르쳐 줄 것이다.

제너럴리스트가 되는 데는 많은 노력이 필요하다. 하지만 새로운 것을 배우는 것은 재미있다는 옛 격언은 변하지 않는 진실을 담고 있다. editor@itworld.co.kr


2021.10.18

IDG 블로그 | 클라우드 아키텍처 제너럴리스트가 되는 방법

David Linthicum | InfoWorld
필자가 최근에 쓴 글 “좋은 클라우드 아키텍트는 스페셜리스트가 아니라 제너널리스트”가 몇몇 사람의 신경을 건드린 모양이다. 사실 필자는 오랫동안 클라우드 아키텍트는 클라우드 기반 기술만이 아니라 모든 기술을 알고 있어야 한다고 주장해 왔다.
 
ⓒ Dmitry Ratushny (CC0)

클라우드 아키텍트는 전통적인 엔터프라이즈 시스템 및 네트워킹, 보안, 거버넌스와 클라우드 기반 솔루션을 혼합해야 한다. 또한 이 모든 조각을 최적화된 방식으로 짜맞춰 비즈니스에 최고의 솔루션을 제공하는 방법을 알아야 한다.

많은 이들이 이 모든 기술을 제대로 이해할 수 있는 방법을 문의했다. 여기 간단한 조언과 시도해 볼 만한 접근법 몇 가지를 소개한다.

우선 제너럴리스트 아키텍트에는 두 종류가 있다.

첫 번째 그룹은 여러 단계를 거쳐 성장한 전문가로, 네트워크 엔지니어, 보안 전문가, 데이터베이스 어드민 등의 여러 직책을 가지고 있다. 이들은 클라우드 아키텍트가 정기적으로 다루어야 하는 많은 구성요소에 관해 넓고 다양한 경험과 지식을 보유하고 있다. 얻기 힘든 클라우드 제너럴리스트 지식을 가지고 있는 것이다.

두 번째 그룹은 처음부터 클라우드 일자리를 찾고 있으며, 클라우드 아키텍트가 되고자 한다. 보통은 수십 년이 아니라 몇 년 내에 원하는 목표에 도달하고자 한다. 과연 이들이 관련 기술의 모든 측면을 이해하는 뛰어난 클라우드 아키텍트가 되는 데 필요한 폭넓은 기술력을 빠르게 습득할 수 있을까?

가능하지만 훨씬 더 어려운 방법이다. 물론, 다음과 같은 몇 가지 지름길이 있다.

편안한 영역을 벗어나 새로운 것을 배운다. 필자는 경력 초기에 보안과 관련된 것은 모두 피했다. 그러다 좋은 보안은 모든 것, 데이터부터 애플리케이션, 컴퓨트, AI, 네트워킹 등등에 체계적이라는 것을 갑자기 깨달았다. 이후 필자는 더 나은 아키텍트가 되기 위해 보안과 그 개념, 그 기술을 이해하는 데 중점을 뒀다. 보안 공부를 업무 시간에 한 것은 아니었고, 이런 지식을 얻는 시간에 보수를 받은 것도 아니었다. 다른 신기술에 대한 지식도 마찬가지다. 만약 주도적으로 일을 만들어서 하는 사람이 아니라면, 이 방식은 적합하지 않을 수도 있다. 

AI나 데이터베이스, 네트워킹, 애플리케이션 개발 등 경험이 전혀 없는 영역을 배워야 한다. 클라우드 영역에서는 네이티브 클라우드 서비스에 대한 포괄적인 이해가 추가된다. 예를 들어, AWS와 마이크로소프트가 제공하는 클라우드 스토리지에 관해 비교 보고서를 작성할 수 있겠는가? 컴퓨팅이나 AI에 대해서는 어떤가? 많은 것의 기본을 이해할 수 있어야 한다.

성공적인 아키텍처와 혁신을 주도하는 패턴을 파악한다. 클라우드 아키텍처, 또는 일반적인 IT 아키텍처는 비즈니스 성공을 이끄는 기술을 최적의 상태로 구성하는 일이다. 여기서 핵심은 ‘최적’이다.

대부분 사람의 클라우드 아키텍처 접근법은 기존 아키텍처 패턴을 재사용하는 것으로, 보통은 단일 클라우드 서비스 업체의 솔루션을 이용한다. 필자는 아키텍처팀이 단일 퍼블릭 클라우드 솔루션을 추진하면 신경질을 내곤 한다. 이런 솔루션이 최적화될 가능성은 ‘제로’에 가깝다. 다시 말해, “돌아간다”고 할 수는 있겠지만, 낼 수 있는 최고의 성능으로 동작하지는 않을 것이다.

이런 일은 아키텍트가 단일 클라우드 서비스 업체 또는 한 종류의 기술만 알고 있을 때 일어난다. 예를 들어 보자. 만약 IT 담당자가 애플 아이폰에 대해서는 모든 것을 알고 있다면, 직원의 절반이 안드로이드를 사용할 때까지는 맡은 업무를 훌륭하게 해낼 수 있다. 일반적인 IT 담당자의 대응은 안드로이드를 배제하는 것이다. 직원들이 안드로이드를 이용해 아이폰보다 두 배의 업무 효율을 올릴 수 있다고 해도 그렇다. 만약 IT 담당자가 안드로이드를 구체적으로 알지 못한다면, 기업의 안드로이드 사용에 대해 좋은 제안을 할 수 있는 역량이 없는 것이다. 단순화시킨 예이지만, 여기에 핵심이 있다. 이 IT 담당자는 자신이 무엇을 모르는지를 알지 못한다.

좋은 제너럴리스트는 원하는 비즈니스 솔루션을 위한 최적의 기술과 구성을 위해 넓은 그물을 던진다. 모든 클라우드 서비스의 장점과 이기종 클라우드 솔루션을 배치하는 단점을 잘 알고 있다는 의미이다. 보통은 이렇게 멀티클라우드가 된다.

다른 사람의 지식을 이용한다. 클라우드 컴퓨팅을 위한 최적의 아키텍처를 찾는 데 필요한 일반화된 지식에 중점을 둔 교육과 서적이 있다. 필자도 클라우드 아키텍처 교육 과정을 운영하고 있으며, 서적으로는 마이클 카비스의 ‘Architecting the Cloud.’를 추천한다.

대학도 기본 및 고급 클라우드 아키텍처에 대한 강의를 제공하지만, 단일 클라우드에 중점을 둔 과정은 주의해야 한다. 여러 기술과 여러 서비스 업체, 여러 솔루션 패턴을 제시하는 과정이어야 한다. 그렇지 않으면, 클라우드가 어떻게 동작하는지를 이해하는 데는 도움이 되겠지만, 뛰어난 클라우드 아키텍트가 알아야 할 것 중 일부만 가르쳐 줄 것이다.

제너럴리스트가 되는 데는 많은 노력이 필요하다. 하지만 새로운 것을 배우는 것은 재미있다는 옛 격언은 변하지 않는 진실을 담고 있다. editor@itworld.co.kr


X