출처: 이근환 (Naver z 프론트엔드 개발자)
https://careerly.co.kr/comments/81305?utm_campaign=user-share
저도 그런 고민을 했던 기억이 있네요
노력을 꾸준히 한다는 전제 하에 시간이 해결해줄 가능성이 매우 높습니다.
프로그래밍 스킬을 보다 빠르게 향상 시킬수 있었던 저만의 꿀팁을 몇개 적어볼게요!
1. 따라치더라도 따라치는 코드의 의미를 확실히 이해하고, 해당 코드에서 사용한 메소드를
새롭게 구성하여 유사하지만 다른 기능을 하는 코드를 조금씩 만들어 보는 것입니다.
가령 자바스크립트의 배열 메소드인 filter라는 코드를 따라 치셨다면,
filter를 이용하여 다양한 코드를 만들어보는 것이지요!
만들다보면 filter는 특정조건에 맞는 요소들을 반환하는 것이구나라는 것을
깨닳게 되고, 좀 더 나아가 filter라는 메소드를 구현해보면서 확실한 이해를 할수 있게됩니다.
이런 부분들이 쌓이면서 문법에 대한 자신감이 생기고,
생각을 코드로 구현하는 부분들이 훨씬 좋아지게 됩니다.
2. 일상생활에서 무심히 지나갈수 있는 부분들을 재밌게 고민하고 생각해보기
이게 무슨 말인가 싶을 수 있는데,
가령 지하철을 타기위해 개찰구를 찍고 들어간다고
생각해본다면, 카드를 댔을 때, 차액이 1150원 미만이면 잔액이 부족하다고 안내를 하고
못들어가게 합니다. 차액이 1150원 이상인 경우에는 1150원이 차감되고,
들어갈수 있게됩니다.
이런 일상생활에서 보이는 로직들을 자바스크립트 코드로 짜본다면 어떨까요?
처음엔 유치해보일수도 괴짜같아 보일수도 있지만, 이를 꾸준히한다면 무시할수 없습니다.
로직을 추론하는 것을 일종의 리버스 엔지니어링이라고 볼수도 있겠고,
이런 로직을 정리하여 코드로 풀어낸다면 생각을 코드로 옮기는 연습을 하는 부분이기에
추후에 기획서를 보고 어떻게 코드를 짜면 되겠구나라는 생각이 더욱 빠르게 가능할수 있습니다.
단, 처음에는 어렵게 코드를 작성할 필요는 없습니다
쉽게라도 옮기는 연습을 해보세요!
3. 다양한 사람들과 코드를 공유하세요
현업에서는 코드리뷰라는 것을 통해 코드의 결점을 피드백 받기도 하고,
좋은 부분은 좋다고 또 동료들이 알려주기에, 코드의 품질을 어느정도 보장받을 수 있고,
그 과정에서 많은 부분을 배우고, 잘못된 습관은 고치고 하는 좋은 부분들이 있는데요!
이런 부분들을 많이 해보시는 것을 추천드립니다.
주변에 학원생밖에 없다면, 강사한테 공유하고 피드백을 받아볼수 있겠고,
필요하다면 이런 개발 관련 커뮤니티에 공유하면서 다양한 사람들의
피드백을 받아볼수 있을 것 같습니다.
4. 비교하지 말기
옆에 있는 친구는 벌써 Next, Typescript, React-Query, Monorepo등...
이것저것 공부하고 적용하는데 나는 아직 자바스크립트도 잘 적응이 안되네..
이런 생각은 본인의 학습 능력만 저하시키게 됩니다.
물론 배움이 빠른 좋은 러닝커브를 가진 친구가 옆에 있을수도 있고,
내 배움의 속도가 늦을수도 있지만, 중요한 것은 확실한 학습인 것 같습니다.
옆에있는 친구가 다양한 기술스택을 빠르게 섭렵한다고 하여도,
그게 겉으로 보기에는 대단해보여도 정확하게 실속까지 알고 엔지니어링 하는지는
또 별개의 이야기이기에, 본인만의 학습 로드맵을 꾸준히 가져가되,
적어도 나는 이게 어떤 원리로 동작하고 어떻게 결과를 만들어내는지
블랙박스 없이 확실하게 안다라고 한다면 결코 느린것이 아닙니다.
5. 리소스를 최대한 할당하기
이건 늦깍이라 하셔서 말씀드리는 것이긴한데,
늦은 만큼 시간적인 투자가 많이 필요합니다.
물론 하루에 12시간씩 한다고 해서 12시간 학습량이 들어가진 않지만 (인간의 뇌구조상..)
시간을 투자하지 않는 것보다는 훨씬 많은 차이가 있다고 생각합니다.
2시간 자바스크립트 문법공부,
1시간 휴식
2시간 CS 공부
1시간 휴식
4시간 사이드프로젝트
1시간 휴식
2시간 공부한 것들 다시 복습
요렇게 휴식시간 제외하고 10시간씩 투자할수 있다면
좋지 않을까란 생각이 드네요!!
결코 이게 쉽진 않겠지만 훗날에는 큰 도움이 될 것입니다!
개발자로 일하면 10시간 넘게 일하는 경우가 더럿있어서
미리 체력을 만들어 둔다고 생각해도 좋겠네요!
---
저도 그랬던 시절이 있었고, 저도 이런 물음을 한 적이 있었는데
그 때도 알지못했던 누군가가 이런 조언들을 해주었고,
시간이 흘러 원하는 기업에서 프론트엔드 개발을 하며
재미있게 보람과 행복을 느끼면서 개발을 하고 있습니다.
분명 질문주신 분께서도 지속적으로 많은 노력을 한다는 전제하에
좋은 커리어를 가져갈수 있으리라 생각합니다.
응원하겠습니다.
읽어주셔서 감사합니다.