엔지니어로 가는 길

재능 없는 사람도 뛰어난 개발자가 될 수 있다 본문

private note/일기?

재능 없는 사람도 뛰어난 개발자가 될 수 있다

탐p슨 2022. 12. 24. 16:48
728x90

재능 있는 사람이란 개발과 관련된 지식 또는 능력을 다른 사람보다 빨리 습득하는 사람이라고 하고, 뛰어난 개발자를 다섯 손가락 안에 꼽히는 회사에서 일하는 개발자라고 가정한다면 재능 없는 사람도 뛰어난 개발자가 될 수 있다고 생각한다.

개발은 시험이나 대회가 아니다

정량적으로 점수를 매길 수도 없고, 참여자들을 변별하기 위해 누군가 억지로 만든 변별력 있는 문제를 풀어야 하는 것도 아니며, 언제나 정답이 정해져있는 것도 아니다. 개발은 현실의 문제를 해결하는 것이고, 때로는 효과적이고 효율적인 방식보다 빠른 방식이 정답일 때도 있고, 빠른 방식보다 효과적이고 효율적인 방식이 정답일 때도 있다. 따라서 좋은 회사는 개발자를 뽑을 때 정량적으로 점수를 매기는 것이 아니라 자신들이 정한 일정한 기준을 넘는 개발자 중에서 함께 일하고 싶은지, 회사와 팀에 잘 어우러질 수 있는 사람인지를 본다고 생각한다.

회사에서 원하는 개발자는 많고 다양하다

다섯 손가락 안에 꼽히는 회사(이하 좋은 회사)에서 일하는 개발자는 한 두 명이 아니다. 서비스가 크고 복잡하기 때문에 많은 개발자가 존재하고, 모두 팀으로 일한다.

 

그리고 회사 구성원은 서로 다른 역할을 한다. 리더도 있어야 하고, 팔로워도 있어야 한다. 새로운 방식, 창의적인 방식을 제시하는 사람도 필요하고, 그러한 방식을 잘 따를 수 있는 사람도 필요하며, 비판적으로 바라볼 수 있는 사람도 필요하다. 주니어도 필요하고, 시니어도 필요하다. 회사에서 새로 적용하려는 기술을 써본 사람도 필요하고, 지금 사용하고 있는 기술을 잘 하는 사람도 필요하다. 꼼꼼하게 일처리 하는 사람도 필요하고, 빠르게 일처리 하는 사람도 필요하고, 커뮤니케이션을 잘 하는 사람도 필요하고, 잘 결정할 수 있는 사람도 필요하다.

 

위에서 나열한 요구사항 하나만 만족할 수 있다고 회사에서 뽑는 것은 아닐 것이다. 몇 개의 요구사항이 겹쳐야 할 수도 있지만 요지는 위에 있는 모든 요구사항 중에 재능이 필요한 것은 하나도 없으며 모두 후천적으로 얻을 수 있는 것들이고, 요구도 다양하기 때문에 내가 만족시킬 수 있는 요구도 반드시 존재할 수 밖에 없다는 것이다.


시험 또는 대회에서는 재능 있는 사람을 이길 수 없다. 세상에는 재능이 있는 사람이 많으며, 그중에 노력하는 사람도 있기 때문에 순위권에 드는 사람들은 언제나 재능이 있으면서 노력까지 하는 사람이기 때문이다.

 

하지만 뛰어난 개발자가 되는 것은 정말 누구나 될 수 있다고 생각한다. 시험이나 대회도 아니며, 누구를 이기고 이겨서 순위권 안에만 들어야 이룰 수 있는 것이 아니기 때문이다.

 

시간이 지나도 변하지 않는 중요한 것을 탄탄히 익히고, 시간이 지남에 도구들이 끊임없이 변한다고 해도 새로운 기술을 익힐 수 있는 능력을 익히고, 자신의 생각을 논리적으로 말할 수 있으며 다른 사람과 원만하게 의사소통을 할 수 있고, 현실의 문제가 유연하게 변하듯이 원칙과 원론을 고집하는 것이 아니라 상황에 맞는 정답을 그때그때 고를 수 있는 유연함을 갖춘다면 이때부터는 운의 영역이고, 시간 싸움이라고 생각한다. 결국 회사가 나를 뽑아줘야 그 회사에 들어갈 수 있기 때문이다.

 

(이 글에서 정의한) 뛰어난 개발자가 되기 위해 필요한 것은 재능이 아니라 꾸준함 한 가지 아닐까.

728x90
Comments