개발자
안녕하세요 늦깍기 프론트엔드개발자를 꿈꾸는 31살 비전공자 취준생입니다. 현재 국비지원에서 2개월정도 수강하고있구요 최근 첫 포트폴리오 작업을 진행하고있는데요 제 배움이 부족해서, 새롭게 포폴을 꾸미고 싶어도 강사님이 수업해주신 코드를 옆에 켜놓고, 그 내용을 똑같이 따라치는거밖에 하지 못하고있습니다. 그러면서 문득 나중에 신입으로 현직에 가서도 이렇게 강사님 주신 코드보면서 치는게 아닌가 라는 걱정도 되고요. 수업외에도 기초가 부족한것같아 기본강의랑 책으로 공부하고있긴한데...언제쯤 이런고민없이 코드를 짤수 있을까 걱정이됩니다....ㅜㅜ
답변 13
인기 답변
저는 7개월간 국비 교육을 받은 뒤 게임업계 신입으로 취업했는데 업무가 시작된 지 3개월도 안 되어 업무 품질을 맞추지 못해 "사기꾼" 소리도 들었습니다. 물론 그 이후에 더 열심히 노력해서 해당 조직에서 인정받았지만요. 프로그래밍을 시작한 지 10개월이 지나도 이 모양인데 프로그래밍 공부를 시작한 지 2개월밖에 되지 않았다면 모든 것이 어려울 수밖에 없습니다. 제가 드리고 싶은 조언은 세 가지입니다: === 1. 조급해하지 마세요. 속도보다는 방향이 중요합니다. 너무 스트레스를 받는다면 차라리 과도한 걱정이나 비교/경쟁을 그만 두는 것도 방법입니다 제가 국비 교육을 받을 때 내부적으로 사람들의 실력을 순위 매기는 못된 친구가 있었는데 저는 그때 꼴찌에서 2, 3번째였습니다. 하지만 지금은 한국에서 3년 근무한 다음 해외에 취업해서 잘만 일하고 있습니다. 제가 프로그래밍을 공부한 지 6년이 지나 되돌아볼 때, 제가 왜 굳이 저 자신을 같이 공부하는 사람들과 비교하며 스트레스를 받았을까 과거의 제 자신이 너무 한심합니다. 만약 제가 당시에 나 자신을 다른 사람들과 비교하지 않고 제가 매일 공부하는 것에만 집중했으면 훨씬 더 빨리 성장했을 겁니다 --- 2. 아무 생각 없이 따라치지 마시고 코드 한 줄, 한 줄의 의미를 먼저 이해하세요 아무 생각 없이 코드를 따라치면 학습 효과는 0에 수렴합니다. 차라리 그 시간에 다른 방식으로 공부하는 편이 낫습니다. 지금 다른 동기들에 비해 뒤쳐져도 상관 없습니다. 제 경험상 주변의 눈치를 보면서 남들과 같아지면 본인에게 오히려 더 불리한 상황만 지속됩니다. 차라리 과감하게 뒤쳐지세요. 그 국기 반에서 꼴찌가 되세요("밴드에서 가장 못하는 사람 되기"). 그 대신, 수업이 끝나고 나서 매번 한 줄, 한 줄의 의미를 완벽하게 이해할 때까지 복기하고 필요하다면 빈 파일에 처음부터 원하는 동작을 구현할 때까지 프로그램을 작성해보세요. --- 3. 주어진 국비 교육에 만족하지 마시고, "프로그래밍을 하는 절대적인 시간"을 늘리는데 집중하세요 프로그래밍 실력은 굳이 과도하게 저수준(low-level)까지 갈 필요는 없지만 최소한의 추상 계층 내에서 "바닥부터 혼자 짜서 완성된 제품을 만드는 과정"에서 가장 빠르게, 많이 성장한다고 믿습니다. 제가 볼 때 작성자분은 본인의 프로그래밍 실력에 1) 자신감, 2) 재미 모두를 느끼지 못하는 단계입니다. 이 단계에서는 중간에 포기하기 쉽습니다. 프로그래밍이 재밌어질 때까지 프로그래밍을 하루에 10시간씩 매일 해보세요. 꼭 10시간이 아니라도 해도 '아, 이건 정말 못 해먹겠다' 싶을 정도까지 매일 지칠 정도로 오래오래 프로그래밍을 하는 경험이 반드시 필요합니다. 딱 한 달만 해보세요. 그럼 그 다음부터는 강사가 하는 말이 너무 쉬워져서 지루해지는 순간이 올 겁니다. === 요컨대, 작성자분은 아직 프로그래밍에서 자신감과 재미를 찾지 못하고 계십니다. 이는 프로그래밍을 한 절대 시간이 부족해서 발생하는 문제라고 봅니다. 단기간 내에 프로그래밍을 어마어마하게 오래, 많이 해서 절대 시간을 채우면 보이는 지평이 달라질 겁니다. 이건 제가 약속드릴 수 있어요. 저를 딱 한 번만 믿고 "프로그래밍 겁내 많이 하기"를 시도해보시기 바랍니다.
익명
작성자
2022년 08월 16일
제가 너무 조급하게 생각했던것 같습니다. 현실적인 조언 정말 감사드립니다!!!ㅠㅠ
안현규
솔트웨어 개발자 • 2023년 01월 15일
진짜 좋은 조언이네요👍👍
김병훈
신안산대학교 전자정보통신 • 2023년 01월 22일
예감사합니다 늘릴수있을때 늘려보겠습니다
하연
공부중인 취준생 • 2023년 02월 02일
작성자는 아니지만 달아주신 답변을 읽고 많은 생각을 하게 되었습니다. 정말 감사합니다..
김의진Yizhen
서울신대 중국어 • 2023년 06월 05일
비전공+30대+ 국비지원 교육생입니다 올려주신 글에 정말 위로를 마니 받앗습니다 저도 원글 작성자 분과 같은 고민을 하고 잇엇는데 정말 해답을 얻은 기분입니다
황의혁
상명대힉교 정보통신공학 • 2023년 12월 10일
정말 좋은 답변 감사드립니다
인기 답변
저도 그런 고민을 했던 기억이 있네요 노력을 꾸준히 한다는 전제 하에 시간이 해결해줄 가능성이 매우 높습니다. 프로그래밍 스킬을 보다 빠르게 향상 시킬수 있었던 저만의 꿀팁을 몇개 적어볼게요! 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시간 넘게 일하는 경우가 더럿있어서 미리 체력을 만들어 둔다고 생각해도 좋겠네요! --- 저도 그랬던 시절이 있었고, 저도 이런 물음을 한 적이 있었는데 그 때도 알지못했던 누군가가 이런 조언들을 해주었고, 시간이 흘러 원하는 기업에서 프론트엔드 개발을 하며 재미있게 보람과 행복을 느끼면서 개발을 하고 있습니다. 분명 질문주신 분께서도 지속적으로 많은 노력을 한다는 전제하에 좋은 커리어를 가져갈수 있으리라 생각합니다. 응원하겠습니다. 읽어주셔서 감사합니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
// 1번, 따라친 코드를 응용하여 이것저것 만들어보기 // 가령 filter를 배웠다면 아래와 같이 로직등을 만들어보기 function getEvenNumber(numArr) { return numArr.filter((num) => num % 2 === 0); } function getFirePokemon(pokemons) { return pokemons.filter((pokemon) => pokemon.type === 'FIRE'); } // 1 + @, filter를 직접 구현해보기 Array.prototype.myFilter = function(callbackFunction, thisArg) { let container = []; for (let index = 0; index < this.length; index++){ let result = callbackFunction.call(thisArg || Window, this[index], index, this); if (result) { container.push(this[index]) } } return container; } // 2. 일상생활에서 보이는 것들을 코드로 옮겨보기 function entraceSubway(balance) { // 기본 금액 const BASE_BALANCE = 1150; if (balance < BASE_BALANCE) { throw new Error('잔액이 부족합니다.'); } // 금액 차감 (구체적으로 구현할 필요는 없음) paySubwayFee(); } // 2+@, 좀 더 디테일하게 구현해보기 function entraceSubway(card) { const nowTime = { hour: new Date().getHours(), minutes: new Date().getMinutes(), } // 학생용인지 (학생은 요금제가 다르기 때문) const isStudent = card.info.usage === 'student'; // 아침인지 (아침이라면 조조할인을 받을 수 있다. - 첫차(5시 30분)부터 오전 6시 30분 까지) const isEarlybird = nowTime.hour === 5 && nowTime.minutes >= 30 || nowTime.hour === 6 && nowTime.minutes <= 30; // 이런식으로 코드가 깔끔하지 않더라도, // 심지어 동작 오류가 나더라도, 옮겨보고, 그 뒤에 에러가 나는 부분을 찾아 고치면서 // 디버깅을 하고, 하면 훨씬 좋아집니다. ... }
인기 답변
조금 이른 고민 같아요. 2달이면, 다른 사람들도 비슷한 상황일 것 같습니다. 문법이 헷갈리면 그때그때 찾아보면 되지요. 다만 이제 강사님의 코드의 흐름(?)을 잘 이해하고, 나중에 필요에 따라 그 흐름에서 변화를 줄 수만 있으면 되지 않을까 조심스럽게 생각해봅니다. 모든 걸 혼자 짠다는 건 불가능에 가까운 일인것 같아요. 특히 새로운 라이브러리를 접할 때, 예제코드를 돌려보고, 라이브러리에서 새로운 기능이 있구나 감을 잡는 건 항상 다른 사람들의 코드를 보고, 공부하고 적용하는 과정이 필요한 것 같거든요.
익명
작성자
2022년 08월 13일
그렇군요 답변주셔서 감사합니다!! ㅠㅠ
인기 답변
비전공자이고 28살에 국비 6개월다니고 어찌저찌 발품팔아 면접 보러다니까 국비 끝나자마자 취업 바로되어서 지금은 8개월정도 된것같아요 저도 작성자님처럼 학원에서도 지금 일하는 순간에도 마찬가지로 불안감에 휩게 쌓이더라구요 근데 결국 그럴수록 저만 지치고 에너지도 낭비하는 느낌이라 더 어려운것 같아요 어차피 지금 당장 해결 안될 문제라고 생각하고 최대한 현재에만 집중하려는것 같아요 같은 처지인것같아 공감도 많이 되고 그러네요 같이 힘내요
인기 답변
모든 문법과 기능들을 전부 암기하고 쓰기는 쉽지 않습니다. 물론 다 암기하고 제때쓸 수 있다면 베스트겠지요. 앞선 댓글처럼 flow를 이해하고 내가 어떤 키워드로 구글링했을 때 자신이 원하는 것을 얻을 수 있는 수준까지만 도달하셔도 반은 먹고 갑니다.
익명
작성자
2022년 08월 14일
넵!! 조언주셔서 감사합니다!!
인기 답변
삭제된 사용자
2022년 09월 06일
저는 30살, 비전공 상태에서 6개월 국비교육을 받았고, 이후로는 구글로 독학을 하며 업을 이어가고 있습니다. 코드를 보며 따라하시면서도 실력을 키울수 있습니다. 강사님의 코드를 다 외워버리세요, 그리고 그 코드에서 하나하나 바꿔가며 응용을 해보는겁니다.나중에 아하!! 이래서 이렇게 작성됐구나 라고 깨달음이 올때가 있습니다 자신의 실력에 대한 걱정과 조바심이 성장의 원동력이라고 생각합니다! 다만 너무 많은 스트레스를 받거나, 흥미가 떨어지지 않도록 멘탈 관리를 하시면서 배우시면 좋을 것 같아요!!
인기 답변
안녕하세요 저도 한때 같은 생각에 힘들어했었던터라 답글을 남겨봅니다. 컴퓨터의 컴자도 모르던 제가 31살때 시작해서 국비과정 수업듣고 지금은 취업한지 4개월이 다되어가네요.. 저는 항상 학원수업시간보다 일찍나와서 부족한 언어부분 강의를 이해될 때까지 듣고, 정처기 필기도 공부하면서 지냈습니다. 필기가 물론 현업에서 큰 도움이 되진않지만, it에 대한 지식이 전무했던 저는 자격증 공부라는 생각보다는 하나하나 알아가는 재미로 접근해서 공부했던거같아요. 모르는부분은 같이 강의듣는 친구에게 많이 물어보고 이해될때까지 원리를 파고들었던거같아요. 코드를 따라치는건 개인적으로 영단어 외우듯 익숙해지기 위한 과정인거같고 저는 코드를 치고 왜 이부분에 이 코드를 치고 저 부분에서 이 코드를 똑같이 사용하는지 부터 하나하나 추격해가듯이 차근히 코드 흐름을 파악하려고 노력해봤던거같아요. 나무를 보기보다는 숲을 보면서 흐름을 그려보려고 계속 노력하면서 많이 나아졌던거같네요. 이해가 안되서 내 머리가 멍청한가? 라고 생각할정도로 우울했던적도 있었고 제자리 걸음인것같아서 답답했어도 근성을 가지고 하면 안될건 없다고 생각합니다. 자신을 믿으세요. 이해안되면 될때까지 파고드시고 타인과 비교는 하지마세요… 쉽지않겠지만 부정적인 생각을 거두고 나만의 속도대로 나아가세요 화이팅입니다!!
인기 답변
현직에 와서도 크게 다를 것이 없습니다, 날코딩이 아닌, 기본 베이스들이 있기에 당장은 코드를 따라치시면서도, 변수나 메소드 등을 잘 조립? 해보시면서 무엇과 무엇이 연관되어 있구나 정도만 아셔도 성공이신 단계입니다~
그리고 6개월이란 자체가 너무 짧아요. 진짜 컴공과에 잘하는분이면 6개월 반짝하고 취업하겠죠. 최소 1년 바라보고 취업준비해야 됩니다. 그러나 현재 작성자님께서는 겨우2달입니다. 왠만하면 급하지 않으시다면, 인턴쉽 다니면서 포폴을 완성해보세요. 부캠, 국비에서는 잘 안 뽑는 추세에요. 아무쪼록 국비때 10시간,12시간 주말 포함해서 일단 뭐가 됐든 방향성 잘 잡고 눈 뜨면 코딩만 하시면 좋은 결과가 나올 것 같아요. 누군가에겐 별로인 제 경험담이겠지만, 혹시나 해서 남겨봅니다.
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!