개발자 유형 6가지, 여러분은 이 중 어떤 타입입니까?

2022.08.22

|

1839
개발자 유형 6가지, 여러분은 이 중 어떤 타입입니까?

*잠깐, 위시켓은 2022년 시밀러웹 방문자 수 기준, 국내 1위 IT아웃소싱 플랫폼입니다. 현재 10만 이상의 개발업체, 개발 프리랜서들이 활동 중이며 무료로 프로젝트 등록이 가능합니다. 프로젝트 등록 한 번으로 여러 개발업체의 견적, 예상기간, 포트폴리오 등을 한 번에 비교해보세요📝

무수히 많은 개발자들을 기본적인 ‘개발자 유형’으로 분류해 보겠습니다.

6가지의 개발자 유형 알아보기

우선, 저는 주변의 우주를 질서 정연하게 배치하지 않으면 잠을 잘 수 없는 사람입니다. 그런 제게, 약 2주 전, 우리의 Web Dev 부트캠프를 수강하는 한 학생으로부터 다음과 같은 질문을 받았습니다. “’개발자 유형’은 몇 가지인가요?”

물론 그것은 직업의 전문분야에 대한 간단한 질문이었습니다(그저 모바일 개발자, 웹 개발자, 게임 개발자 등으로 분류하면 되는 문제였습니다) 그러나 제 뇌는 문제를 그렇게 간단하게 생각하지 못하고 과하게 몰입했기 때문에, 점점 깊은 수렁 속으로 빠져들었습니다.

저는 얼마나 많은 개발자의 유형이 존재하는지에 대해 스스로 질문해보았습니다. 그중 코딩이라는 예술에 접근하는 핵심적인 방법이 몇 종류인지에 대한 관점으로 고민했습니다.

저는 기술 산업에서 수십 년의 경험과 인지 심리학(혹은 그와 비슷한 것도 동시에, 참고로 저는 그것과 관련해서 무슨 수업을 들어야 하는지조차 감도 잡을 수 없습니다.)의 탄탄한 기초가 필요한 질문에 대답할 자격이 있는 척하지 않을 것입니다.

오직 순수하게 제 개인적인 경험과, 능력을 바탕으로, 그리고 편안히 잠을 자기 위해서, 다음과 같은 6개의 개발자 유형 분류를 생각해 냈습니다.

1. 비즈니스 개발자

비즈니스 개발자 유형 알아보기

비즈니스 감각이 좋은 개발자는 자신이 작성한 코드가 실제 애플리케이션에서 어떻게 도움이 될 것인지에 대한 강한 직관을 가지고 있는 사람들입니다.

이러한 ‘개발자 유형’들에게 있어서 코드는 목적이 아닐뿐더러 얼마나 코드가 ‘우아한지’에 대한 질문도 별로 흥미를 느끼지 않습니다. 보통(물론 항상 그런 것은 아니지만) 이들은 일의 마감일을 정하고 준수하는 것에 대해서 남들보다 뛰어난 모습을 보여줍니다.

저는 실용적인 일에 대한 재능이 반드시 선천적이어야 한다고 생각하지 않으며, 비즈니스 개발자는 후천적 경험을 바탕으로 양성할 수 있다고 확신합니다. 굳이 시장 분석가가 아니더라도 그들이 그 어느 스타트업에 가던 그들의 몸값이 금값이라는 것을 알아내는데 많은 시간이 걸리지 않을 것입니다. 이것이 비즈니스 개발자들이 기술 산업에 ‘자연 서식지’가 없는 이유입니다. (역주: 후천적으로 양성될 수 있으므로, 계속해서 새로운 사람들이 등장하지만 동시에 수요도 높기 때문에 잦은 이직이 있음을 의미합니다.)

흥미롭게도, 비즈니스 개발자는 그런 방식으로 구분하지 않습니다. 아마 ‘진정한’ 개발자(진부한 표현이지만)는 추상적인 형태와 순수한 생각의 영역에서만 전적으로 활동한다고 여겨지기 때문일 것입니다.

그렇기에, 만일 여러분이 그 누구도 이 묘사를 통해 자신임을 알아보지 못한다면, 솔직히 저는 충격을 받을지도 모르겠습니다.

2. 미믹

미믹 개발자 유형 알아보기

미믹은 그들이 이전에 경험했던 해결책을 바탕으로 문제를 해결해 나가는 ‘개발자 유형’입니다.  이러한 표현법은 그들이 대단하지 않은 것처럼 들릴 수 있습니다. 우리는 거의 모두가 우리 스스로를 다른 사람이 생각하지 못한 해결책을 도출해내는 ‘반항아적 천재’라고 생각하기를 선호하기 때문입니다. 그러나 실제로 미믹은 다른 방식들보다 훌륭한 접근 방식입니다.

실제로 미믹의 방식은 창의적이지는 않습니다. 그러나 그들은 매우 현실적이고 친숙한 기술로 그 점을 보완합니다. 미믹은 일반적으로 그들의 일을 잘 알고 있습니다. 따라서 다방면으로 기술을 공부하는 사람보다 훗날 더 전문적인 사람이 될 수 있습니다.

또한, 이전에 경험했던 해결책의 관점에서 생각한다고 해서 구현이 독창적이지 않다는 의미는 아닙니다. 실제로 미믹은 이전에 결합된 적이 없는 정신적 포트폴리오에서 다양한 선택지를 조합할 수 있을 때 분명히 최고의 모습을 보여줍니다. 그 사실만으로도 그들의 작업은 처음부터 생각한 것만큼 혁신적일 수 있습니다.

3. 깊은 사상가

깊은 사상가 개발자 유형 알아보기

만일 여러분이 ‘프로그래밍 그 자체’인 사람을 만났다면, 그 친구는 틀림없이 이 부류의 사람일 것입니다.

이 ‘개발자 유형’은 일과의 대부분을 콘솔에서 떨어져 조용히 앉아 특별히 아무것도 응시하지 않으며 보냅니다. 실제 코드 작성은 그다음의 문제입니다. 그리고, 마치 왓츠앱(Whatsapp)을 작성하듯이 변수와 함수를 척척 적어 나가는 것을 보면 정말 경외심마저 느껴집니다.

물론, 깊은 사상가가 하는 일 중에 진정으로 특별한 것은 없습니다. 모든 프로그래머는 실제 코드 작성 이전에 정신적 계획 단계를 거칩니다. 다만 차이점은 근본적으로 에너지 소비로 귀결됩니다. 복잡한 모델을 마음속으로 생각하면서 정작 그것들을 크게 신경 쓰지 않는 것은 대부분의 사람들에게 지치고 힘든 일입니다. 깊게 생각하는 자는 형이상학적 세계로의 도피가 쉬우며, 아마도 그것에 편안함을 느낄 것입니다. 그리고 만일 여러분이 ‘자연스러운’ 존재라고 부르는 사람이라면, 예. 아마도 그들일 것입니다.

4. 환원주의자1

환원주의자 개발자 유형 알아보기

이런 타입의 ‘개발자 유형’들은 코딩을 구축하거나, 연구하거나, 개조하거나, 고객에게 서비스를 제공하거나, 놀이로 받아들이지 않고, 오직 ‘문제 해결’의 관점으로 접근하는 사람들입니다. 그들은 그들이 원하는 성과가 무엇이든 간에, 해결책을 구상하는 것으로 시작할 것입니다. 그 뒤, 거꾸로 작업합니다.

저는 그들을 환원주의자라고 생각합니다. 그들의 접근 방식은 일종의 소거법입니다. 일단 그들이 찾던 해결책에 안착하면, 그들은 필연적인 것들만 남을 때까지 계획에서 비효율적이고, 부적합한 선택지와 기술들을 전부 제거할 것입니다.

미믹과 마찬가지로, 환원주의자들은 창의적인 개발자에 속하지 않는 경향이 있습니다. 그러나 그들은 무슨 프로젝트를 진행하고 있던, 위기의 순간에 변함없이 최고의 사람들입니다.

만일 당신의 제품이 새로운 기능을 추가해야 하지만 시간이 없다면, 환원주의자들에게 연락하세요. 그들은 그들에게 제한된 자원 속에서 최고의 해결책을 찾아올 것입니다. 그 후, 사람이 할 수 있는 최대한의 속도로 일을 끝마칠 것입니다.

5. 팽창주의자

팽창주의자 개발자 유형 알아보기

환원주의자들과 비교해서, 스펙트럼의 정 반대쪽에 있는 곳에 팽창주의자 ‘개발자 유형’이 있습니다. 오래된 RPG의 마법사들처럼, 그들은 커리어의 초기 단계에서는 아무 쓸모가 없을 것 같아 보일지도 모릅니다. 그러나 일정 레벨과 함께 경험이 쌓이면 결국에는 걸출한 마스터가 됩니다. (물론 꾸준한 공부라는 레벨업을 통해서)

이는 팽창주의자들이 일을 끝마치는 방법이 오직 한 가지뿐이라고 생각하지 않기 때문입니다. 대신, 그들은 여러 솔루션을 탐색하고 다른 사람들이 미처 생각하지 않았거나 요청하지 않았던 새로운 도구를 가져올 것입니다.

미약한 시작점에서 다양한 길을 생각하는(때때로 프로젝트 진행의 방향성까지 변경) 그들의 능력은 그들이 마스터한 기술이나, 언어에 따라 더욱 유용하고 창대해집니다.

주어진 작업에 어떤 기술이 가장 적절할지 결정할 수 있는 것은 전문 개발자에게 기본적인 소양이지만 숙련된 팽창주의자들은 일반적으로 그러한 요청을 할 수 있는 최고의 동료입니다.

6. 창조자

창조자 개발자 유형 알아보기

저는 창조자를 자체 ‘개발자 유형’으로 만드는 것에 대해 조금 조심스러웠는데, 이는 다음의 여러 가지 이유들 때문이었습니다.

첫 번째로, 거의 모든 프로그래머들은 어느 정도 창의적입니다. 예를 들어, 바로 이 목록에 있는 확장주의자와 깊은 사상가도 본질적으로 창의적입니다. 게다가, 제목은 명확해야 합니다. 많은 사람들이 이 제목을 보고 흔히 비디오 게임이나 아름다운 웹 사이트를 디자인할 수 있는 ‘예술적인 면을 가지고 있는 개발자’로서 이해할 것입니다.

그러나 제 의도는 그런 것이 아닙니다. 그보다는, 저는 다른 사람들이 미처 생각해내지 못한 해결책을 찾아내는 능력을 가진 개발자를 생각했습니다.

이 말은 그 해결책이 최고의 해결책이라는 의미는 아닙니다. 단지 주어진 환경에서 쉽게 생각할 수 없는 특이한 해결책이라는 의미입니다. 또한 이는 창조자가 몇몇 이 목록의 다른 분류와 공통점이 있지만, 약간의 다른 점으로 인해 구분된다는 것을 의미합니다.

프로그래머는 사상가들의 직업이라서 남들과 다르게 생각하는 사람들은 실제로 남들보다 몇 발자국 더 앞서 갈 수 있습니다. 그러나 창조적인 개발자들이 일종의 ‘재능’이 있다고 생각할 필요는 없습니다.

어떤 사람들은 다른 사람들보다 이런 종류의 일을 선천적으로 더 잘할 수 있지만, 모든 사람은 문제에 창의적으로 접근하고 점점 더 독창적인 해결책을 찾도록 스스로 훈련할 수 있습니다. 이는 단지 열정, 연습, 그리고 이전에 다른 문제와 그것을 해결해본 경험(또는 다른 말로 하면 좋은 과거의 경험)이 필요합니다.

[1] 복잡한 일을 그보다 단순한 일들의 조합으로 나눠서 생각할 수 있다고 주장하는 견해

국내 1위 IT아웃소싱 플랫폼 위시켓에 프로젝트를 등록해보세요.

6만 여건의 데이터를 바탕으로 프로젝트 견적을 상담해 드립니다.

앱 개발 비용 궁금하세요?
위시켓이 바로 알려드릴게요!

개발자 유형개발자 유형 리스트개발자 유형 분류앱 개발자 유형웹 개발자 유형
다음 글

위시켓 블로그의 새로운 소식 받기