코딩을 넘어 — 파트 1

Feb 19 2023
무엇이 훌륭한 소프트웨어 엔지니어를 만드는지 이야기해 봅시다. 코딩은 가지고 있으면 좋은 기술이지만 제한된 기간 동안만 충분합니다.
Unsplash의 Luke Chesser 사진

무엇이 훌륭한 소프트웨어 엔지니어를 만드는지 이야기해 봅시다. 코딩은 가지고 있으면 좋은 기술이지만 제한된 기간 동안만 충분합니다. 조직에서 성장함에 따라 더 적은 코드를 생성하고(아마도 추가하는 것보다 더 많이 삭제) 더 많은 사람들이 코딩 기술 외에 귀하가 알고 있는 것에 의존하기 시작할 것입니다.

내가 전문 경력을 시작했을 때를 기억합니다. 저는 사용자 스토리를 얻고 코드를 대량 생산하는 사람이었습니다. 하지만 4년차가 되자 갑자기 일이 잘못되었을 때 답을 찾는 사람이 되었습니다. "이 경로의 속도를 어떻게 제한해야 합니까?", "왜 앱이 무작위로 충돌합니까?", "사용자가 그렇지 않은데 소프트웨어의 이 부분에 왜 그렇게 많은 비용을 지출하고 있습니까?"와 같은 질문에 대한 답을 알아야 했습니다. 그렇게 많이 사용하는 건가요?", "트래픽이 급증한 건가요, 아니면 공격을 받은 건가요?"

경력에서 이 지점에 도달하면 게임을 강화해야 한다는 것을 깨닫게 될 것입니다. 나는 뒤에 남겨둔 필수 개념을 다시 방문해야했습니다. 콘솔 디버깅뿐만 아니라 네트워킹, 데이터베이스 내부, 운영 체제 기초, 프로파일링 및 적절한 디버깅 기술에 대한 책을 읽고 과정을 수강하기 시작했습니다. 내 경력의 절반 동안 블로그 게시물과 YouTube 과정에 크게 의존한 사람으로서 컴퓨터의 특정 주제에 대한 실제 책과 심도 있는 과정을 읽는 것의 중요성을 아무리 강조해도 지나치지 않습니다. 짧은 블로그 게시물과 YouTube 자습서에는 일반적으로 남겨진 필수 세부 정보가 많이 있습니다.

코딩은 소프트웨어 엔지니어로서 우리 일에서 가장 쉬운 부분입니다. 요즘은 AI도 할 수 있습니다. GPT-3와 같은 대규모 언어 모델이 컨텍스트를 더 잘 이해함에 따라 제품을 구축하는 능력이 점점 더 쉬워지지만 문제를 찾고 수정하고 기존 시스템을 최적화하는 능력이 더욱 중요해질 것입니다. 이것이 당신을 나머지 사람들과 차별화시킬 것입니다.

걱정하지 마세요. 기술로서의 코딩은 사라지지 않습니다. 적어도 조만간. AI 부조종사의 도움을 받는 것이 더 저렴해지기 때문에 코드를 작성하는 데 더 효율적일 뿐입니다. 하지만 여전히 AI 부조종사가 출력하는 코드를 읽는 방법을 알아야 합니다. 그래서 코딩을 잘하지만 코드를 더 잘 읽는 사람이 되기를 열망합니다. 프로덕션에서 15분마다 일부 포드가 계속 다운되는 이유를 찾는 방법을 아는 사람이 되십시오.

이것은 Beyond Coding 시리즈의 첫 번째 부분으로, 수석 소프트웨어 엔지니어가 되기 위한 여정에서 배운 내용을 작성합니다. 최신 자바스크립트 프레임워크로 10억 달러 규모의 차세대 앱을 만드는 방법에 대해 쓰기보다는 생산, 프로파일링, 쿼리 최적화에서 특정 문제가 발생할 때 어떻게 해야 하는지, 올바른 절충점을 선택하는 방법(모든 것이 장단점), API 보안 및 기타 많은 흥미로운 주제입니다.