본문 바로가기
Experience

어떻게 하면 개발을 잘 할수있을까?

by Gil Granger 2019. 5. 24.
 
개발을 해오면서 적성이 얼마나 중요한지 느끼게 된다. 평소에 임하는 자세나 마인드에 따라 같은 환경에서 확연히 다르게 차이가 난다.
신입들을 교육한 경험상 몇주만 같이 일해보면 나중에 얼마나 실력이 향상될지 어느정도 가능성을 알 수있었다.
 
개발 지식을 조각퍼즐에 비유하자면 처음 조각을 모으면서 붙이다보면 처음에 뭐가 뭔지 모르면서 부분부분들만 이해해 가게 되지만,  하나하나 이해해가며 모으다보면 한 부분 그림이 이어져서 보이게 되고 그러다보면 알고 있던 지식들이 연결되어 그만큼 실력이 훨신 더 늘어나게 된다.
 
아직 경험으로서 부족하지만 그동안 끊임없이 고민해본 생각들을 정리해본다.
 
1. 기록하자
개발하면서 이해하고 지식을 습득하면서 어떻게 기억하려하지는지에 따라 그 지식을 활용 할때 달라진다고 생각한다.
개발하면서 지식이나 코드를 이해하고 기억하려고 하지만 시간이 지나면 보통의 경우 잊혀지는 경우가 많다.
그래서 언제든 그 경험이나 지식을 기록하고 필요할때 다시 찾아서 상기시키는것이 중요하다. 
예로 티비방송에서 김영하 작가는 말을 수집하는 사람'이라 재밌거나 새로운 말을 만날때마다 노트에 메모한다고 한다고 말한것이 기억난다.
어떤 방법에서든 습득한 지식이나 이해되는부분을 기록하고 다시 언제든 찾을 수 있도록하여 활용하는것이 중요하다.
물론 머리가 좋아서 다 기억할수 있다면 따로 기록할필요는 없을 것이다.
 
2. 민감하라.
한줄의 코드를 볼때 어떤사람은 하나를 생각하고 어떤사람은 두개 이상을 생각하는 사람이 있다.
그 코드 한줄에서 어떻게 동작하는지 생각을 깊게 해본다면 남들보다 하나를 더 알 수 있는 기회가 생기는 것이다.
 
3. 의문을 가져라.
앞서 2번과 같이 왜 그렇게 동작하는지 그냥 넘어가지 않고 이해되지 않는 부분은 끝까지 늘고 늘어지줄 알아야 한다고 생각한다.
지적 호기심이 있어야 발전 할수 있다. 의문을 가져야 하나를 더 알게되고 거기에 파생되는 지식들이 계속 따라간다면 많은 지식들이 습득하게 될 것이다.
예를 들어 MVC 패턴의 스프링 프레임워크를 간단하게 활용한다고 했을때 컨트롤러에서 매핑되는 메소드가 ModelAndView 나 String 등을 반환했하는 것을 흔히들 볼수 있을 것이다.
이러한 것을 보면서 왜 저렇게 다르게 반환해도 동작이 되는것인지 어떻게 작동 되는지 생각해보고 추척해본다면 한 예로 View Resolver나 Converter 같은 기능 등을 보게 될것이다. 그렇게 동작방식을 보면서 알게 되는 부분이 하나씩 쌓인다면 스프링을 더 이해하게 되고 얼마든지 더 응용할 수 있는 지식들이 늘어날 것이다.
 
4. 다른사람의 생각을 읽어라.
팀단위로 개발을 진행할때  다른사람의 코드를 볼 수 있는 환경들이 주어진다.
그러한 상황들 속에 어느 회사, 팀에 있느냐에 따라 어떤사람들과 함께 하는지에 따라 역량차이가 발생하게 된다. 그만큼 좋은 코드를 가지고 같이 성장할수 있는 기회가 되기 때문이다. 
항상 내 코드가 옮다고 생각해선 안된다. 다람 사람의 코드를 보면서 놓치고 있던 부분이나 패턴, 효율성있는 개발들을 참고해볼 수 있다. 그 코드를 보면서 왜 저렇게 했을지 깊게 생각해본다면 그사람의 생각을 읽으며 자신의 실력이 좀더 향상될 수 있다. 
 
5. 오픈소스를 보자.
오픈소스에서 배울 수 있는것이 너무나 많다.
어렵게 찾아볼 것 없다. 지금 사용하고 있는 스프링 프레임워크를 하나씩 의문을 가져보면서 동작흐름 이해를 위해 하나씩 코드를 까보자. 
디자인패턴이나 객체지향에 대해서도 배울 수 있는 부분이 있을 것이며 DI(Dependency Injection 같이 어떻게 생성자를 생성하여 결합할 것인지 등 주로 서적에서 배울법한 실무 코드들을 알 수 있다.
 
6. 이해되지않는 것들을 끝까지 이해하고 넘어간다. 
앞의 내용과 비슷한 내용이다. 코드나 장애 등은 그냥 넘어가지말고 끝까지 이해하려는 끈기와 노력이 필요하다.
 
 
 
 
 
정리를 해본다면 개발을 하려면 결국 적성이지 않을까싶다.
적성은 그사람의 성격과 일치되는 부분이 많은것 같다.
 
글쓰는 솜씨가 아직 많이 부족하기때문에 다시 정리를 해야 할것으로 보인다.

 

댓글