이번에 읽은 개발 아티클은
개발자에게 물어봤습니다: ① 함께 일하고 싶은 개발자(https://yozm.wishket.com/magazine/detail/1702/)이다.
내가 개발 수업을 배우게 되면서 느낀 만큼 개발자의 업무는 생각보다 많고, 이것을 우리가 평소에 인터넷 내의 여러 웹사이트나 어플리케이션에 바라는 만큼의 스펙을 유지하도록 하는 것은 힘겨운 일이다. 때문에 본격적인 프로젝트를 위해서는 이러한 업무를 적절히 분담하고 또 서로 호환하게 하는 것이 중요할 것이다.
해당 글에서는 그러한 개발자의 업무 환경과 개발자가 선호하는 동료에 대해 취재하여 글을 읽는 나(개발자 취업준비생)로 하여금 미리 고려해보아야 할 업무태도를 생각해보도록 하였다.
먼저 내가 이 글을 읽고 확인한 것은 하나의 웹페이지 혹은 어플리케이션 같은 것들을 개발하는 것에도 여러 기술이 필요하지만 그 기술들 중에도 하나의 기술을 개발하는 것에도 여러 사람이 필요하다는 것이다. 이러한 경우 업무 분담과 확인은 매우 중요한데, 일단 내가 이해한 범위 내에서는 라이브러리와 같은 규격이 통일되어야 한다는 게 가장 와닿았다.
라이브러리란 비유하자면 개발자의 도구로, 마치 연장통과 그 속의 못과 드라이버 같은 것이다. 드라이버에는 십자형 드라이버나 일자형 드라이버, 전동 드라이버 등이 있고 나사에는 돌리는 나사와 굽히는 나사, 일자형/십자형 홈이 파인 나사 등이 있다. 이러한 도구들은 각 도구마다 호환되는 다른 도구가 달라서, 전동 드라이버는 돌리는 나사를 조일 수 있고, 십자형 드라이버는 십자형 홈이 파인 나사를 조일 수 있다. 가장 간단한 예로 십자형 드라이버로 일자형 홈이 파진 나사를 조일 수 없는 것처럼 맞지 않는 도구들을 사용하면 아무것도 할 수 없다.
개발자끼리 라이브러리를 협의하지 아니함은 이렇듯 서로 다른 드라이버와 나사를 들고 집을 짓겠다는 것과 같다. 자신의 연장통 안에서 꺼낸 도구들은 짝이 맞춰져 있으니 자신이 맡은 부분만큼은 잘 완성할 수 있을지 몰라도 그것을 다른 연장통을 가진 개발자가 만든 부분과 접붙이려고 할 때 큰 문제가 발생할 것이다. 이러한 문제의 발생을 없애기 위해 미리 서로 어떤 연장통과 도구를 가지고 집을 지을 것인지 논의를 해놓아야 한다.
다음으로 목표를 공유하는 것 역시 중요한 과정이다. 만약 집을 지을 때 어떤 방의 문은 나무문이고 어떤 방의 문은 철문이면 얼마나 보기 이상하겠는가. 처음에 목표를 공유하는 것을 소홀히하거나 어떤 개인이 홀로 폭주해서 재질이 다른 문을 완성해서 내놓는다면 참으로 난감한 상황이 펼쳐질 것이다. 이 문들을 기능적으로 잘 배치해서 좋은 집을 만들 수 있게 되면 참 좋겠지만, 대부분의 경우 두 문 중 하나는 폐기처분하고 처음부터 다시 만들어야 할 것이다. 이러한 수고는 나 자신과 팀원들을 피로하게 할뿐만 아니라 프로젝트의 결과에 유의미한 문제점으로 작용할 수 있으니 먼저 잘 확인해야 할 것이다.
이러한 착안점들은 비단 개발자뿐만이 아니라 온갖 직종에서도 중요시되는 점들이다. 하지만 개발자의 특성상, 시각적 결과물이 나오기까지 오랜 시간이 걸리는만큼(비록 내가 수강하는 강의는 프론트엔드이지만) 결과물이 나오기 이전의 구상과 협의가 더욱 중시되어야 할 것이다.
'til' 카테고리의 다른 글
숫자 기억 게임 만들기 2일차 (0) | 2024.06.25 |
---|---|
숫자 기억 게임 만들기 1일차 (0) | 2024.06.24 |
콘솔 적극 활용하기-강아지 편 (0) | 2024.06.20 |
Javascript 톺아보기 (0) | 2024.06.19 |
개발 아티클 스터디 (0) | 2024.06.18 |