본문 바로가기

IT

좋은 개발자가 되기 위해 노력해야 할 것들

안녕하세요. 요즘 코딩에 관심들이 많고 개발자로 직업을 가지고 싶은 분들이 많은 것 같습니다.
그래서 개발자로 성장하기 위해 필요한 것들에 대해 정리해 봤습니다.

 

rest api 테스트 프로그램DB Client 프로그램 Datagripcode ide intellij 프로그램

 

글에 앞서 제가 적은 이 글이 정답이라고 생각하진 않습니다. 다른 개발자분들의 다양한 의견이 있을 수 있다는 점 미리 말씀드립니다.

잘할 수 있는 개발 언어를 가지셔야 합니다.

최근뿐 아니라 개발 언어는 예전부터 참 다양하게 있었습니다. 예전에는 언어마다의  특성이 강해언어에 종속적인 개발이 많이 이루어지기도 했었죠.

요즘도 물론 정말 많은 언어가 있습니다. 하지만 예전보다는 각 언어들이 어느 정도 공통된 표준들이 정해지고 있습니다.

이런 환경속에서 개발자는 자신이 주특기로 사용할 언어는 하나 정도는 가져야 합니다.

사람이 모두 다 잘 알 수도 없고 다 잘 할수도 없습니다. 그래서 다양한 언어를 모두 깊게 알 수는 없습니다. 물론 한 언어를 깊이 알면 다른 언어를 알아가는 속도는 분명 빨라지며 그래서 좀 더 많은 언어를 습득할 수는 있습니다.

 

그러나 직업으로서 개발자는 자기가 속한 회사에서 다양한 언어의 전문성을 띨 수는 없다고 봅니다. 자신이 맡은 포지션의 언어에 좀 더 심도 있게 아는 편이 좋다고 생각됩니다.

 

그러나 다양한 기술에 자신을 노출시켜야 합니다.

위에 언급한 내용과 모순처럼 들릴지는 모르겠으나 이 부분은 개발자로서의 숙명과도 같은 것이라고 생각됩니다.

자신이 집중하는 기술 부분 외에 다양한 기술에 관심을 가져야 합니다. 

 

모든 것을 다 할 수는 없으나
모든 것에 관심을 가져라라고 말씀드리고 싶네요

 

알고리즘 공부에 충실해야 합니다.

비즈니스 기능을 구현하는 방법은 다양합니다. 그러나 현업에서는 그런 방법 중에서 최선의 방법으로 구현되어야만 합니다.

그러기 위해서는 구글링이나 검색을 의존해서만으로는 어렵습니다. 도룸을 받을 수는 있지만 

자기 입맛에 맞는 최적의 답은 잘 없습니다. 그래서 자신이 로직을 해결해야 합니다. 그런 로직의 질을 높여주는 방법으론 알고리즘 공부가

중요하다고 말씀드릴 수 있습니다. 

좋은 알고리즘 서적등을 통해 알고리즘의 기본기를 탄탄히 쌓으십시오.

 

프로젝트 디자인 설계에 대한 고민을 하셔야 합니다.

실무 또는 현업에서는 프로젝트 구조에 대한 고민을 많이 하셔야 합니다.

흔히 우리는 이런 말을 하곤 합니다. "모로 가도 서울만 가면 된다" 근데 이 말은 프로그램에서는 위험한 말이라고 생각합니다.

결과만 나와서는 절대 안 됩니다. 그 결과가 나오는 구조 또한 제대로 되어야 합니다.

 

좋은 서적이나 잘 만들어진 프로젝트 소스도 많이 접해 보시는 것이 도움 되실 거라 믿습니다.

 

항상 검증을 해야 합니다.

개발자들은 무슨 말인지 다들 아실 겁니다. 자신이 개발한 부분에 대해 항상 의심을 품고 테스트하십시오.

요즘은 좋은 테스트 도구들이 많이 있습니다. 테스트 도구를 잘 활용하세요.

머리만 믿고 실행을 했다간 수많은 오류를 만나게 되고 오류가 해결되지 않은 채 배포되었다간 큰 사고를 만나게 되실 겁니다.

 

혼자 개발은 위험하다고 생각됩니다.

물론 혼자서 잘할 수 있고 좋은 결과를 낼 수도 있습니다. 하지만 여럿이 의견을 나누고 고민하는 것보다는 못할 수 있습니다.

혼자서 좋은 결과가 나와도 쉽게 지치게 마련입니다.

온라인이든 오프라인이든 코드리뷰를 통해 자신의 코드의 질을 높이시고 여러 사람의 머릿속에서 나오는 아이디어를 공유하세요.

 

에러에 조급해하지 마시고 혼자 해결하는 습관을 가져보세요

개발자들이 흔히 하는 말이 있습니다. "그래 한번에 될 일이 없지..." 개발자라면 누구나 경험하는 말이라고 자부합니다.

그 만큼 에러나 버그는 항상 늘 따라 다닙니다.

에러가 발생했다고 성급한 마음을 가지기보다 하나씩 풀어가도록 하세요. 그리고 에러가 발생했을 때 주위에 도움을 줄만한

시니어 개발자 분들이 있어서 도움받으면 좋겠지만 우선은 혼자 해결해 보도록 노력하는 것도 중요합니다. 후에 자신에 실력향상에 많은 도움이 되실 겁니다.

정리

이글은 어디까지나 저의 주관적인 생각일 뿐입니다.

그리고 이 외에도 개발자들이 갖췄으면 하는 것들은 많을 테지만 제 나름대로 한번 정리해 보았습니다.