[IT] 인사이드 머신러잉 인터뷰

2024. 4. 26. 13:11 | Posted by 꿈꾸는코난

< 인사이드 머신러닝 인터뷰 > | 펑 샤오 지음 | 정원창 옮김 | 한빛미디어

 

현재 다양한 산업에서 생성형 AI 활용되고 있으며, 거의 모든 산업게에서 AI/ML 분야 인력을 채용하고 팀이 유지되고 있다. 하지만 생성 AI에 대한 기본 개념인 ML에 대해 제대로 된 이해를 하고 있는 사람은 흔치 않고, 다양한 관련 기술서적도 기본적인 개념을 파악하고 기본기를 다지기에는 어려운 수준이라고 볼 수 있을 것 같다. 이 책은 ML 직무 면접을 준비하는 사람을 비롯해서 ML 업계에서 일하는 다양한 직군의 기본기를 다져주고자 하는 목적으로 쓰여졌다. 이를 위해 중요 주제를 선정하고 내용을 탄탄히 정리할 수 있도록 단계별로 내용을 정리하고 있다. 또한 ML 면접 과정을 따라 가면서 자주 묻는 질문에 대해 이상적인 답변을 구성하고 제시하고 있다.

이 책은 총 7장으로 구성되어 있다. 1장은 ML 면접에 임하는 단계로서 다양한 유형의 ML 면접을 소개하고, 우수 답변의 필수 요소에 대해 설명한다. 2장에서는 ML 기본지식을 소개하는 장으로서, 데이타셋 수집 단계부터 이 단게에서 발생할 수 있는 문제점, 그리고 고려사항에 대해 설명한다. 또한 질문에서 나올 수 있는 기본적인 지식을 총 29개로 나누어 제시한다. 3장은 ML 코딩에 대한 부분을 설명하고, 4장과 5장에서는 ML 시스템 설계에 대해 소개한다. 6장에서는 ML 인프라 설계에 대해 제시하고 7장에서는 고급 ML 문제를 제공한다.

각각의 장마다 세부적인 질문형식으로 문제를 제시하고 이에 대한 답변을 설명하는 형식으로 되어 있다. 따라서 실제 면접을 보는 입장에서 면접관이 질문하는 과정처럼 책을 읽어 나갈 수 있으며, 주어진 주제에 대해 전반적으로 고민하고 답변할 수 있는 능력을 키울 수 있는  구성이라고 생각한다. 뒷부분으로 가면 갈수록 제시되는 질문이 어려운 난이도를 가지지만 현재 본인의 수준에 맞추어 책을 읽어보면 좋을 것 같다.


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

< 게임 AI를 위한 탐색 알고리즘 입문 > | 아오키 지음 | 서수환 옮김 | 한빛미디어

 

요즘 워낙 AI가 대세이다 보니 AI가 들어간 분야에 대해 관심을 가지고 보는 편이다. 처음 이책을 접했을 때는 게임에 AI를 접목한 기술에 대해 설명한다고 생각했다. 게임 AI는 실제 1인 게임을 하면서 많이 접해 본, 컴퓨터를 대상으로 같이 게임하는 것으로 생각하면 편할 것 같다. 물론 AI 기술이 워낙 대중적으로 널리 퍼져있기 때문에 머신러닝 기술이 포함되기도 하지만 넓게 본다면 규칙기반, 탐색 등의 기술적인 요소를 모두 포함한 개념으로 보면 된다. 특히 이 책에서는 탐색에 중점을 두고 설명하고 있기 때문에 일반적으로 생각하는 AI와는 조금 거리감이 있는 것 같다. 이 책에서 언급하는 탐색은 조합론적 게임 이론의 게임 트리 탐색과 조합 최적화를 사용한 휴리스틱을 포함한다. 이 중 조합론적 게임 이론에서는 게임의 진행을 유향 그래프로 표현하고, 게임판을 노드, 선택지를 엣지로 표현한 것을 게임트리로 지칭한다.

이런 개념뿐만 아니라 실제 C++을 이용하여 게임개발을 위한 환경 구축을 사전에 진행할 수 있도록 한다. 이를 위해 WSL을 설치하고 필요한 패키지를 설치하는 과정을 소개함으로 별도 서버를 두지 않더라도 자신의 윈도우즈  시스템에서 테스트해 볼 수 있는 환경을 구성할 수 있다. 이후 본격적으로 탐색 알고리즘을 소개한다. 컨텍스트가 있는 1인 게임에서 사용하는 탐색 알고리즘, 컨텍스트가 없는 1인 게임에서 사용하는 탐색 알고리즘, 교대로 두는 2인 게임에서 사용하는 탐색 알고리즘, 동시에 두는 2인 게임에서 사용하는 탐색 알고리즘, 그리고 여태까지 설명된 알고리즘을 기반으로 좀 더 효율적으로 이를 활용할 수 있는 방법을 소개한다. 마지막으로 실제 게임에 응용하기 위한 방법을 설명한다.

각각의 장마다 다양한 검색 알고리즘과 코드를 설명한다. 어떤 방식의 게임이냐에 따라 사용해야 하는 알고리즘이 조금 달라진다는 것을 알수 있으며, 일부 알고리즘은 여러 게임방식에 활용될 수 있다는 것도 알 수 있게 된다. 또한 단순 게임을 진행하는 방식만 설명하는 것이 아니라 스코어를 매기고 승률 계산을 하는 부분까지 세밀한 부분까지 코드로 보여준다. 따라서 게임 개발에 관심이 있다면 다양하게 제시된 코드와 개념을 활용할 수 있지 않을까 생각된다. 물론 아주 복잡한 게임을 소개하는 것은 아니기 때문에 대중적인 게임을 만들만큼의 개념을 제시하지는 않지만 책 제목처럼 입문이라고 생각한다면 게임 개발의 출발점으로 삼기에는 큰 무리가 없는 것 같다.


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

< 개발자를 위한 최소한의 실무 지식 > | 김현정, 이재효 지음 | 한빛미디어

 

개발팀 내에 신입 개발자 또는 주니어 개발자가 있을 경우 이들에게 어떤 것을 가르쳐야 할지 고민이 종종 발생한다. 개발 자체에 대한 부분은 개발자 개개인의 능력이라고 볼 수 있지만 실무에 필요한 지식은 정의하기도 어렵고 범위도 넓어 어떤 부분을 교육해야 할지 막막하기도 하다. 이 책은 개발자를 위한 최소한의 실무 지식이란 제목에 맞게 주니어 개발자에게 필요한 최소한의 실무 지식을 알려준다. 개발자가 꼭 알고 있어야 하는 효과적인 데이타베이스 활용법과 암호화 및 시큐어코딩, 자원 관리, 성능 최적화 등 개발에 직접적인 지식뿐만 아니라 효율적인 개발을 위한 개발 도구, 테스팅 도구, 좋은 코드를 작성하는 방법 등 폭넓은 지식을 익힐 수 있도록 되어 있다.

어떻게 보면 주니어 개발자가 혼자서 이 책을 통해 공부하기에는 조금은 어려울 수도 있겠다는 생각이 든다. 보다 효과적으로 이 책을 활용할 수 있는 방법은 주니어 개발자를 가르쳐야 하는 시니어 개발자가 이 책을 이용하여 교육하는 것이 좋은 방법이지 않을까 생각한다. 총 10개의 챕터로 구성되어 있지만 서로 연관성은 없기 때문에 조직내에서 꼭 필요한 챕터만 간추려 교육해도 좋곘다는 생각이 들었다. 물론 어느정도 기반지식이 있는 주니어 개발자라면 혼자서도 별 무리없이 이 책을 기반으로 학습할 수도 있을 것 같다.

이 책에 포함된 내용은 개발자라면 누구라도 접할 수 밖에 없는 핵심적인 지식을 포함하고 있다는 생각이 들었다. 조직 내에서 교육자료로 사용하든 혼자서 공부하는 용도로 사용하든  어떤 방식으로든 유용하게 활용될 수 있는 책이라는 생각이 든다. 또한 단순히 내용만 기술하는 것이 아니라 코드가 필요한 곳에서는 실제 코드를 활용하여 상세히 설명하고, 참고 화면이 필요한 곳에서는 실제 화면을 보여주면서 설명하고 있기 때문에 좀 더 실제와 가까운 지식을 습득할 수 있다고 생각한다.

개발자로서 출발하는 주니어 개발자, 주니어 개발자를 교육해야 하는 시니어 개발자가 이 책을 활용한다면 실무에서 바로 활용할 수 있는 실무 지식을 습득할 수 있는 좋은 방법이 될 것 같다.


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

 

'꿈꾸는 책들의 도시' 카테고리의 다른 글

[인문] 북극을 꿈꾸다  (0) 2024.03.15
[소설] 파우스트  (0) 2024.03.04
[시] 꽃이 사람이다  (0) 2024.02.17
[경제] 국부론  (0) 2024.02.03
[물리] 모든 순간의 물리학  (0) 2024.02.02

[과학] 기계의 반칙

2023. 12. 23. 16:42 | Posted by 꿈꾸는코난

< 기계의 반칙 > | 넬로 크리스티아니니 지음 | 김정민 옮김 | 한빛미디어

 

얼마 전 챗GPT를 출시해 글로벌 테크 업계 스타로 떠오른 샘 올트먼이 해고된 후 사무실에 서 복귀 논의를 벌이다 결국 마이크로소프트로 가기로 했다는 기사가 나왔다. 최종적으로 해고를 결정한 이사회를 다시 구성하고 올트먼이 다시 복귀하는 형태로 마무리되었다. 이러한 일이 일어난 궁극적인 이유는 빠른 인공지능 개발에 대한 우려때문으로 생각된다. 즉 현재의 빠른 인공지능의 개발이 언젠가는 인간을 넘어서는 인공지능의 개발로 이어지고 이는 인간이 제어하지 못하는 형태로 이어질 수 있다는 것이다. 즉 인공지능의 발전이 인류에 야기할 수 있는 윤리 및 도덕적 문제에 대한 근본적인 인식 차이를 보여준다고 볼 수 있다. 이러한 시점에서 우리는 인공지능에 대해 근본적인 질문과 이해를 할 필요가 있어 보인다.

이 책은 현재와 같은 인공지능의 급성장 시기에 인공지능과 공존하기 위한 조언을 제시한다. 책의 시작은 지능에 대한 정의로부터 시작한다. 지능이란 인간적인 것에 대한 문제가 아니라 새로운 상황에서 효과적으로 행동할 수 있는 능력의 문제이다. 이전에는 지능을 인간 위주로 해석헀다면 이제는 지능을 두뇌가 아닌 식물, 개미 군체, 소프트웨어에서 지능을 찾아볼 수 있다는 점이다. 이러한 인식의 전환을 통해 인공지능에 대한 패러다임이 전환되고 획기적으로 발전될 수 있었다고 본다.

이런 과정을 거쳐 점점 인공지능은 논리와 추론의 언어가 아닌 확률과 수학적 최적화로 발전했으며,  규칙성을 파악하고 규칙적인 환경을 갖추는 것이 지능형 행동의 전제 조건이 된다는 것을 이해할 수 있다. 규칙성으로 부터 데이터를 학습한 인공지능이 아무런 문제를 발생시키지 않을 것이라고 기대하는 것은 불가능하다. 이는 인공지능의 미래를 언급할 때 종종 야기되는 인공지능의 반란(?)으로 이어지며 인간을 위협하는 과정으로 이어질 수 있다. 이러한 상황을 만들지 않고 인간이 만든 기계가 지시받은 일을 그대로 수행함으로써 근본적인 사회 규범을 위반하지 않도록 하려면 어떻게 해야 할지 많은 고민이 필요하다.

어찌되었던 이제 인공지능이 배제된 세상은 상상하기 힘든 시대가 되었다. 따라서 인공지능과 함께 안전하게 살아갈 방법을 찾아야 하며, 이를 위핸 많은 연구자들이 인공지능이 준수해야 할 원칙의 목록을 중요하게 여기고 있다. 이를 통해 인공지능에 대한 감사를 가능하게 하며, 안정성, 공공성, 개인정보보호, 투명성 등 중요한 요구사항을 준수할 수 있도록 개선해 나갈 필요가 있다.

주위를 보면 인공지능의 발전 속도가 무섭게 느껴진다. 예상하지 못한 형태의 서비스가 속속 출현하고 있으며 전에는 생각하지도 못한 다양한 정보를 제공하고 있다. 현 시점에서 인공지능에 대한 발전 과정을 살펴보고 현재 일어나고 있는 다양한 기술적, 윤리적 이슈를 생각해 봄으로써 인공지능에 대해 다시 생각해볼 필요가 있을 것 같다.


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

[IT] 알고리즘 인사이드 with 파이썬

2023. 11. 25. 13:10 | Posted by 꿈꾸는코난

< 알고리즘 인사이드 with 파이썬 > | 손혁제 지음 | 한빛미디어

 

많은 IT 기업에서 개발자 채용시 코딩 테스트를 시행하고 있다. 이 코딩 테스트는 단순히 개발 언어를 잘 알고 있느냐가 아니라 주어진 문제를 잘 이해하고 해결 과정을 최적화된 알고리즘으로 잘 구현할 수 있느냐를 테스트하는 과정이다. 따라서 코딩 테스트에는 다양한 자료고와 알고리즘과 기반 지식을 얼마나 알고 있는냐를 판단할 수 있도록 구성되어 있는 것 같다.

많은 개발자들이 개발 언어에 대한 스킬을 높이는데 관심이 많은 것 같다. 하지만 개발자의 핵심 역량은 도구로서의 개발언어가 아니라 주어진 문제를 제대로 파악하고 구현하는 알고리즘 역량이라고 생각한다. 이를 통해 개발자로서 해결해야 하는 문제를 좀 더 잘 이해하고, 더 잘 구현할 수 있는 능력이 생기게 되는 것 같다.

이 책은 다양한 알고리즘 문제를 제시하고 혼자서 풀어볼 수 있도록 되어 있다. 이를 위한 준비단계로써 파이선 문법과 정규표현식을 Part 1에서 설명한다. Part 2에서는 기본 자료구조와 기본 알고리즘을 설명하면서 알고리즘 문제를 풀기 위한 기본 지식을 갖추도록 한다. Part 3부터는 알고리즘 풀이를 위한 문제는 제시한다. 카테고리별로 재귀, 탐색, 공간, 순열 및 조합, 배열 등 다양한 알고리즘에 대한 문제를 포함하고 있다. 각 문제마다 문제에 대한 정의와 문제 해결 방법, 해결 코드가 제시되고, 특히 해결 코드는 단순히 코드만 보여주는 것이 아니라 코드에 대한 자세한 설명이 있어서 코드에 대한 이해를 한층 높일 수 있는 것 같다.

파이썬 개발자라면 이 책을 통해 다양한 알고리즘 문제를 풀고 이해하는데 많은 도움이 될 것 같다. 굳이 파이썬 개발자가 아니더라도 자신한테 익숙한 개발 언어를 이용하여 문제를 풀어볼 수도 있을 것 같다. 개발 언어만 달라질 뿐이지 핵심 알고리즘이 달라지는 것은 아니기 때문에 문제 풀이를 통해 충분히 이해할 수 있지 않을까 생각한다.

 


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

[IT] 사라진 개발자들

2023. 9. 24. 23:20 | Posted by 꿈꾸는코난

< 사라진 개발자들 > | 캐시 클라이먼 지음 | 이미령, 김태곤 지음 | 한빛미디어

 

흑백사진 한장으로 부터 출발한 이름없는 여성들에 대한 이야기이다. 이 책을 읽으면서 예전에 본 영화 히든피거스가 떠올랐다. NASA에서 극심한 여성 차별을 견디며 자신들만의 능력을 보여준 여성들의 이야기를 잘 보여준다. 이 책도 마찬가지다. 남성들만의 전유물로 여겨진 애니악의 역사에서 핵심적인 프로그래밍을 담당한 여성 수학자들의 모습을 볼 수 있다.

제 2차 세계대전 중 남성들이 전장에 나가면서 생긴 공백을 여성들이 채우기 시작한다. 그 중 한 영역으로 여성 수학자들을 동원하여 포탄의 궤도를 계산하는 역할을 맡기게 된다 . 애니악을 운용했던 6명의 여성 개발자도 전쟁이라는 특수한 상황속에서 남성들의 전유물이었던 컴퓨터를 운용하고 프로그래밍을 익히게 된다. 컴퓨터의 역사에서 애니악은 주요한 부분을 담당하지만 애니악 프로그램에 대해서는 접해본 적이 별로 없는 것 같다. 최초의 컴퓨터라는 호칭만 나오지 실제 애니악을 이용한 개발은 잘 드러나지 않았던 것 같다. 그 애니악의 개발 역사에서 여성 6명이 핵심 역할을 했다는 것이 알려지지 않았다는 것은 그만큼 컴퓨터의 역사가 남성들의 전유물로 여겨지고 있다는 것을 알 수 있다.

현재 여성 개발자가 많이 있지만 여전히 남성 개발자가 많은 비중을 차지하는 것 같다. 개발이라는 측면을 본다면 다른 공학과는 달리 여성이 능력을 발휘할 수 있는 분야라고 생각한다. 하지만 아직도 남성이 많다는 것은 여전히 여성들에 대한 진입 장벽이 존재한다는 것을 의미한다고 볼 수 있다.

이 책에서 소개되는 6명의 이야기를 전개하기 위해 저자는 관련된 인물을 일일이 인터뷰하고 방대한 분량의 참고문헌을 확인했다. 이러한 부분은 책 뒷쪽의 참고문헌을 보면 잘 드러난다. 또한 관련된 사진을 통해 그 당시의 모습을 잘 엿볼 수도 있다.

애니악의 역사에서 여태까지 모르고 있었던 숨겨진 여성 개발자를 접할 수 있어서 흥미로웠다. 그들의 열정을 보면서 나 자신을 반성하기도 헀고, 사회적인 편견과 무시를 받으면서도 성공으로 나아가는 모습을 보면서 희열을 느끼게 되었다. 근래 잘 알려지지 않은 여성들에 대한 이야기를 서술한 책을 몇권 보게 되는데 그런 이야기를 접할 때마다 나 자신도 여성을 바라보는 시각이 매번 바뀌는 것을 느끼게 된다.

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

'꿈꾸는 책들의 도시' 카테고리의 다른 글

[IT] 핸즈온 머신러닝  (1) 2023.10.27
[자기계발] 입 닥치기의 힘  (1) 2023.10.13
[인문] 만화로 보는 그리스 로마 신화 1~2  (0) 2023.09.24
[요리] 용BEER천가  (0) 2023.09.21
[문학] 반항인  (0) 2023.09.21

[IT] 파이썬 크래시 코스

2023. 8. 24. 17:25 | Posted by 꿈꾸는코난

< 파이썬 크래시 코스 > | 에릭 마테스 지음 | 한선용 옮김 | 한빛미디어

 

파이썬은 전 세계적으로 인기있는 프로그래밍 언어 중의 하나이다. 특히 개발을 처음 접하는 사람들이 가장 많이 선택하는 언어 중의 하나이며, 인공지능 관련 개발을 한다면 거의 대부분 파이썬 언어를 선택하고 있다. 시중에 파이쎤 관련된 책들이 많이 나와 있지만 대부분 기초에 관련된 부분을 언급하거나 아니면 실제 파이썬 언어를 잘 사용하는 사람들이 활용할 수 있는 응용 부분에 치중되어 있다. 즉 기본부터 활용까지 전반적으로 두루 살펴볼 수 있는 책은 그리 많지 않는 것 같다. 이런 측면에서 이 책은 기본편과 실습편으로 나누어져 있어 그 활용도가 높다고 볼 수 있다. 파이쎤을 처음 접하는 사람이라면 기본편부터 출발해서 실습편까지 쭉 이어서 학습할 수 있으며, 파이썬에 어느정도 익숙한 사람이라면 자신에게 필요한 부분을 선별해서 학습할 수도 있을 것 같다. 또한 중간 중간 연습문제가 포함되어 있어 자신이 학습하고 있는 부분에 대해 제대로 이해하고 있는지 확인도 가능하다.

기본편에서는 파이쎤 프로그래밍 언어에 대한 기본적인 개념을 익힐 수 있도록 한다. 기본적인 파이썬 개발 환경을 구성하는 것으로 시작해서 프로그래밍을 처음 시작할 때 항상 나오는 "Hello World"를 출력하는 프로그램을 작성한다. 이후 변수와 단순한 데이터 타입에 대해 설명하며, 파이썬에서 제공하는 유용한 데이터 타입 중의 하나인 리스트와 딕셔너리에 대해 상세히 설명한다. 또한 제어를 위한 if 문과 while 문, 그리고 함수에 대해 설명을 진행하며, 클래스와 파일 처리에 대한 설명을 함으로써 기본편이 마무리된다.

실습편에서는 실제 파이썬을 이용하여 게임을 만들어 나가는 예제를 설명한다. 외계인 침공이라는 게임 제작을 위해 필요한 불을 뿜는 우주선, 외계인, 점수 매기기 등을 설명한다. 데이터 시각화를 위해서는 데이터를 생성하고 데이터를 내려받고, API를 사용하는 방법을 보여준다.

전반적으로 코드에 대한 설명이 상세하게 되어 있어 초보자도 쉽게 차근차근 따라갈 수 있도록 되어 있다. 기본 개념에 대해서도 충실하게 되어 있을 뿐만 아니라 실습편에서도 이해하기 쉽게 설명되어 있어 중간에 좌절하지 않고 끝까지 해 나갈 수 있게 도와주는 것 같다.

이 책의 목표에 적혀 있는 대로 이 책은 파이썬으로 게임이나 데이터 시각화, 웹 애플리케이션 같은 프로그램을 가능한 한 빨리 만들어 보는 것이다. 따라서 프로그래밍 기본을 빠르게 배우고 싶은 사람, 문제를 해결하면서 새로운 컨셉을 이해했는지 확인하고 싶은 사람에 적합한 책이라고 생각한다. 또한 이 책을 통해 파이썬 언어에 대한 고급 기술을 익히고 다른 프로그래밍 언어를 배울 때 기본 개념을 좀 더 수월하게 익힐 수도 있을 것 같다.


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

'꿈꾸는 책들의 도시' 카테고리의 다른 글

[인문] 뉴욕, 기억의 도시  (1) 2023.08.30
[예술] 미학 스캔들  (0) 2023.08.25
[경제] 투자의 구원자들  (0) 2023.08.24
[인문] 나이가 든다는 착각  (0) 2023.08.24
[역사] 우리 역사 속 전염병  (0) 2023.08.12

[IT] 프로덕트 매니지먼트

2023. 7. 20. 15:47 | Posted by 꿈꾸는코난

< 프로덕트 매니지먼트 > | 김영욱 지음 | 한빛미디어

 

예전에는 프로젝트 관리에 관련된 역할을 언급하면 대부분 PM(Project Manager)을 떠올렸던것 같다. 하지만 어느 순간 PL(Project Leader), PO(Product Owner), PM(Proudct Manager) 등 다양하게 구분된 역할로 나뉘게 된 것 같다. 그리고 각각의 개념과 역할을 상세하게 설명하는 책이 출판되고 있다. 하지만 각각의 역할만 떠올려보면 대충 이해가 가는 것 같으면서도 다른 역할과 동시에 생각하면 여전히 서로 혼동되는 것도 사실인 것 같다. 이 책은 프로덕트 매니저에 대한 전반적인 것을 소개하고 있으면서도 다른 혼동하기 쉬운 역할과의 차이점에 대해서도 잘 설명해주고 있다.

프로덕트 매니지먼트를 설명하기 전에 먼저 프로덕트가 무엇인지를 알아야 한다. 그리고 프로덕트를 구성하는 컴포넌트 개념도 이해를 해야 한다. 개념적으로 프로덕트는 소비자가 보는 전체 프로덕트일 수도 있고 기능에 따라 더 작은 부분으로 나눠질 수도 있다는 사실이 중요하다. 프로덕트가 만들어지고 사용자에게 전달되는 과정과 다양한 문서자료들, 엔지니어링 팀이 사용하는 공유 컴포넌트 등 모든 것이 예상하는 동작을 하게 만드는 책임을 가진 사람이 프로덕트 매니저이다. 즉 프로덕트 설계, 개발, 테스트, 릴리즈, 라이프사이클 모든 것에 대해 책임지는 역할이라고 생각할 수 있다.

프로덕트 매니저 역할에 대해 혼동을 피하기 위해 프로덕트 매니저의 역할인 것과 아닌 것을 구분해 보면 좋을 것 같다. 프로덕트 매니저의 역할로서는, 1) 커뮤니케이션의 허브 역할, 2) 우선순위 조정 역할, 3) 프로덕트 대표이자 치어리더 역할이다. 반대로 프로덕트 매니저의 역할이 아닌 것으로는, 1) 보고 라인에 있는 팀 상사, 2) 능숙한 기술자, 3) 마케터, 4) 프로덕트 오너, 5) 애자일 전문가, 6) 데이터 분석가나 사용자 리서처이다. 일부 역할에 혼동이 있을 수는 있지만 이 역할을 제대로 이해한다면 프로덕트 매너저로서의 역할이 무엇인지 조금은 명확해질 수 있는 것 같다.

PM이라는 용어는 Product Manager, Project Manger, Program Manager가 서로 같이 혼용해서 사용한다. 용어는 같이 사용하더라도 각각의 역할은 엄연히 다르다는 것을 알고 있어야 한다. Product Manager는 프로덕트의 '무엇'과 '왜'에 초점이 있는 역할이며, Project Manager는 프로덕트의 '언제'에 관심이 있는 역할이며, Program Manager는 프로덕트를 '어떻게" 책임지는 역할이라고 보면 된다. 이 관점에서 본다면 세가지 역할이 어떻게 다른지 잘 파악이 되는 것 같다.

1장에서 프로덕트 매니지먼트에 대한 개념을 설명한 후에 좀 더 구체적으로 프로덕트 라이프 사이클, 프로세스 및 프레임워크에 대해 소개한다. 일반적으로 알고 있는 프로덕트 개발 라이프사이클과 달리 프로덕트 라이프 사이클은 별도로 존재한다. 또한 프로덕트를 만들기 위해 다양한 프로세스와 프레임워크가 존재하는데 각 조직에 맞는 프로세스와 프레임워크를 적용하는 것이 중요하다는 것을 언급하고 있다. 어느 잘 나가는 조직이 사용하는 프로세스와 프레임워크를 그대로 받아들이는 것이 아니라 조금의 시행착오를 거치더라도 조직에 맞는 프로세스와 프레임워크를 찾아서 적용하는 것이 필요하다.

프로턱트 개발에서 중요한 것은 고객이 원하는 프로덕트를 개발하는 것이다. 이런 측면에서 고객 개발이라는 파트에서 고객의 요구를 수집하고 반영하는 방법에 대해 소개하고 있으며, 경쟁력있는 프로덕트를 위해 프로덕트 전략 및 로드맵이 중요하다는 것을 잘 보여주고 있다. 이어서 PM의 일상적인 업무와 능력있는 PM이 되기 위해 필요한 요소들에 대해 설명을 하고 있다.

처음 책을 읽을 때는 프로덕트 매니저의 역할이 다른 PM과 무엇이 다른지가 궁금했었다. 하지만 책을 읽으면서 프로덕트 매니저의 역할 뿐만 아니라 프로덕트에 대한 전반적인 개념을 한층 이해할 수 있었으며, 특히 PM의 일상 업무 파트에서는 제대로 개념을 파악하지 못하고 있었던 와이어프레임, 프로토타입, 목업에 대해 알 수 있게 되었다. 또한 백로그, 에픽, 사용자 스토리에 대한 이해도 한층 깊어진 것 같다. 프로덕트 매니저에 대한 이해를 높기 위해 시작했지만 프로덕트에 대한 전반적인 이해와 세부 개념에 대한 이해의 폭을 넓힐 수 있는 좋은 계기가 되었다.

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

< 개발자를 넘어 기술 리더로 가는 길 > | 타냐 라일리 지음 | 김그레이스 옮김 | 디코딩

 

이전과 달리 많은 기업들이 관리자 트랙과 개발자 트랙을 별도로 운영하고 있다. 관리자 트랙은 이미 오래전부터 사용되던 방식이기 때문에 큰 이슈는 없을 것이다. 하지만 개발자 트랙은 운영하는 회사마다 조금씩 다른 측면을 보인다. 외부에서 봤을 때는 체계적인 개발자 트랙이 존재하는 것처럼 보이지만 내부적으로 보면 별도 체계가 없는 조직도 제법 존재하는 것 같다. 개발자 트랙을 어느정도 운영하는 조직에서도 경력에 따른 개발자의 역할과 관리자와의 관계에 대해 크게 관심을 두고 있지 않는 곳도 일부 있는 것 같다.

많은 사람들이 공감하듯이 개발자가 가장 약한 부분 중 몇 가지가 의사소통 능력과 인원관리 능력이다. 하지만 이 능력은 관리자가 되기 위해서는 꼭 필요한 능력으로 볼 수 있다.  개발자 트랙이 제대로 갖춰지지 않은 조직이라면 개발자는 어쩔 수 없이 관리자 역할을 떠맡게 되고 결론적으로 성과가 떨어지는 경우를 종종 보게 된다.

이 책에서는 개발자가 나아갈 방향으로 스태프 엔지니어라는 해결책을 제시한다. 스테프 엔지니어는 개발자들의 롤모델로서 기업의 기술전략을 결정하고, 동료들의 역량 향상에 도움을 줄 수 있다. 또한 대규모 프로젝트에서 전체적인 기술 검토 및 아키텍처를 설계하고 진행 과정에 나올 수 있는 다양한 현안에 대해 해결 방안을 제시할 수도 있다.

스테프 엔지니어는 좁은 관점이 아닌 빅 피처 관점에서 업무를 다루고 전략적으로 수행할 수 있으며, 프로젝트를 전술적으로 주도하고 실용적인 방법으로 문제을 해결하며, 우수한 엔지니어의 의미를 이해하고 그 능력을 갖춘 엔지니어로 볼 수 있다. 이를 위해 스테프 엔지니어에 대한 개념과 역할을 명확히 설명하고, 성공적인 프로젝트 실행과 대규모 프로젝트 진행을 위해 필요한 고려사항 및 절차에 대해 보여준다. 또한 스테프 엔지니어로서 어떤 롤모델 역할을 해야하는지와 필요한 역량이 무엇인지를 설명한다.

궁극적으로 이 책을 통해 개발자의 직책으로 스태프 엔지니어가 필요한 이유에 대해 기업 및 개발자 관점에서 이해할 수 있고, 스테프 엔지니어의 역할에 맞춰 조직의 목적을 달성하는 방법을 알 수 있으며, 최종적으로 개발자로서 더 높은 단계로 성장하기 위해 무엇이 되어야 하는지에 대해 공감할 수 있다.

물론 회사에서 조직적으로 뒷받침되지 않으면 스테프 엔지니어라는 개념이 무용지물이 될 수 있다. 하지만 개발자의 미래를 위해  스테프 엔지니어라는 역할의 필요성을 이해시키고 지속적으로 개선해 나가는 노력이 필요한 것 같다. 그런 측면에서 이 책을 조금 더 빨리 알았으면 하는 아쉬움이 있다. 많은 개발자들이 자신의 미래 모습을 고민하는 현실에서 경력 사다리를 체계적으로 밟아갈 수 있는 역할과 목표가 주어진다면 그 고민의 많은 부분을 덜어줄 수 있지 않을까 생각한다.

개발자의 미래에 대해 한층 깊이있는 고민과 이해를 할 수 있는 소중한 책인것 같다.


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

 

< Docs for Developers 기술 문서 작성 완벽 가이드 > | 자레스 바티 외 4인 지음 |

하성창 옮김 | 한빛미디어

 

개발자를 포함한 소프트웨어 엔지니어들이 가장 힘들어하는 영역중에 하나를 꼽는다면 문서 작성이라고 말할 수 있을 것 같다. 특히 개발자의 경우 일상적인 대화는 문제가 전혀 없는데 작성된 문서를 보면 많은 차이가 생기는 것을 보게 된다. 책에서도 언급이 되지만 문서 작성을 위해 워드나 한글 프로그램을 실행한 후 한동안 멍하게 있는 경우도 종종 보곤 한다. 그만큼 문서의 작성이 쉽지 않다는 것을 보여주는 것 같다.

이 책은 소프트웨어 엔지니어가 어려워하는 문서 작성에 대한 단계별 절차를 잘 설명한다. 실제 업무 환경과 유사하게 강아지 음성 번역 서비스를 개발하는 개발팀을 통해 사용자 파악, 요구사항 분석, 절차 등을 실제와 유사하게 보여준다. 특히 개략적인 설명에 끝나지 않고 필요한 요소와 이에 대한 템플릿을 같이 제시함으로 실제로 문서 작성을 시작하기 어려웠던 사람들에게 실용적인 가이드를 제시해 주고 있다.

이 책은 크게 11개의 장으로 구성되어 있다. 1장 독자 이해하기에서는 문서화를 위해 필요한 사용자 공감의 중요성에 대해 언급하며, 인터뷰, 개발자 설문조사, 고객 지원 문제 검토와 같은 사용자 조사 및 도구를 사용할 수 있음을 설명한다. 특히 사용자의 경험에 대한 마찰 로그를 문서화하고 이를 통해 사용자와 공감하는 것이 중요하다는 것을 잘 보여준다. 2장 문서화 계획하기에서는 만들어야하는 콘텐츠 및 컨텐츠 유형을 문서 작성에 앞서 설명하는 것이다. 문서화 계획은 사용자가 필요로 하는 콘텐츠의 유연한 밑그림 역할을 하면서 소프트웨어 엔지니어가 가장 중요한 문서를 작성하는데 집중할 수 있도록 해 준다.

3장 문서 초안 만들기에서는 편안하고 친숙한 문서 작성 도구를 선택하여 성공적인 글쓰기 준비를 도와주며, 4장 문서 편집하기에서는 작성된 초안을 기반으로 정확성,  완결성, 구조, 간결성, 명확성을 높이는 방향으로 진행되며 특히 동료 검토 및 피드백의 중요성에 대해 잘 알 수 있다. 이어지는 모든 장에서도 각 단계에 맞는 적절한 문서 단계에 대해 설명한다. 특히 10장 문서 구조화하기와 11장 문서 유지 관리 및 지원 중단하기는 문서를 작성한 후 관리를 위해 필요한 여러 단계 및 계획에 대해 잘 설명하고 있다.

문서 작성에 대해 어려움을 느끼거나 거부감을 느끼는 사람도 많은 것 같다. 이는 문서 작성 자체에 대한 어려움보다 제대로된 문서 작성 경험 부족과 제대로 된 절차를 잘 알지 못해 생기는 경우가 더 많다는 생각이 든다. 문서 작성에 어려움을 느끼고 있는 소프트웨어 엔지니어라면 이 책을 통해 문서 울렁증에서 벗어날 수 있는 계기가 될 수 있을 것 같다.

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

이전 1 2 3 4 다음