You Are Not Google : 문제 이해 없이 기술을 선택하지 말라
You Are Not Google / Oz Nova
"문제 이해 없이 기술을 선택하지 말라. 너는 아마존도, 구글도 아니다."
(* 아래 내용은 위의 글을 정리한 것입니다.)
"너는 아마존이 아니다" – 기술 선택에서 이성을 되찾기
1. 기술 선택은 종종 비이성적이다
- 소프트웨어 엔지니어들은 새로운 기술을 선택할 때 종종 맹목적으로 유행이나 대기업의 선택을 따름.
- 구글이 사용한 MapReduce 같은 기술을 자신과는 전혀 다른 규모의 문제를 가진 회사들이 무비판적으로 도입.
- 이는 본래 목적이나 필요와 무관하게 ‘대기업처럼 보이고 싶다’는 환상에서 비롯됨.
2. MapReduce, Hadoop, Cassandra, Kafka… 너는 그들이 아니다
- MapReduce/Hadoop : 수 페타바이트의 데이터를 다루는 기업에게는 유용하지만 대부분의 조직에는 과도한 I/O 및 기능 손실만 가져옴.
- Cassandra : 아마존의 장바구니처럼 쓰기 가용성이 핵심인 경우에 적합하지만 읽기 위주 환경에는 부적합.
- Kafka : 수십억 건의 데이터를 처리하는 LinkedIn을 위해 설계되었으나 하루 몇 건 처리하는 기업에겐 과도함.
- SOA (Service-Oriented Architecture) : 아마존이 7,800명 직원일 때 도입한 구조를 소규모 스타트업이 그대로 모방.
3. UNPHAT: 합리적 기술 선택을 위한 체크리스트
<기술 선택 전 고려해야 할 6단계 전략>
- Understand the problem : 문제를 제대로 이해하라.
- Numerate solutions : 다양한 해결책을 열거하라.
- Paper : 해당 기술의 논문을 읽어라.
- History : 기술이 나온 배경을 살펴라.
- Advantages : 장단점을 비교하라.
- Think : 이 솔루션이 진짜 필요한지 숙고하라.
4. "너는 아마존이 아니다"
- 아마존, 구글, 링크드인 등의 기술을 무작정 따르지 말고 자신의 맥락에 맞는 솔루션을 찾으라는 메시지.
- 예: Stack Overflow는 하루 2억 건의 요청을 4대의 SQL 서버로 처리함. 엄청난 기술보다 적절한 설계가 더 중요할 수 있음.
5. 결론: 문제를 먼저 이해하라
- 기술이 아닌 문제에서 출발하라.
- 유행보다 현실, 대기업보다 자신을 기준으로 삼아야 올바른 선택 가능.
- "이해하지 못한 질문에 답하는 것은 어리석다"는 말을 마음에 새겨야 함.
Comments
Post a Comment