본문 바로가기
카테고리 없음

프로그래밍 학습

by *&^@ 2021. 4. 12.

기본적으로 자신의 기술을 발전시키는 것은 쉽지 않습니다. 부단한 노력과 함께 꾸준히 노력해야만 얻을수 있는것이 바로 이것이죠. 대부분의 사람들은 작심삼일이라는 단어를 자의든 타의든 몸소 체험하게 되는데요. 이유는 무엇일까요? 보통은 어떻게 해야하는지 방법을 모르기 때문입니다. 예를 들어서 프로그래밍을 공부한다고 생각해보도록 하겠습니다.

요즘 고급 IT개발자 품귀현상으로 인해서 각종 뉴스매체를 통해서 개발자들을 고임금으로 모셔간다고 말하는 IT, 게임업계 회사들의 이야기를 들어보셨을것입니다. 불과 10여년전만 하더라도 개발자분들은 괜히 이쪽으로 와서 몸과 마음만 상하고 있는것 아닌가 라는 이야기를 많이 했습니다. 그도 그럴것이 잦은 야근과 함께 많은 시간을 업무와 싸우면서 자신의 생활을 못하는 경우가 많았거든요. 아 물론 전부가 그렇다는 소리는 아닙니다. 이런 상황은 외부 프로젝트에 투입된 분들이 많이 겪게되는 일이었는데요.

보통 기존에 존재하는 시스템이 오래되어서 갈아 엎어야하는 시점이 되면 차세대라는 이름으로 새로운 시스템으로 개발을 합니다. 중요한건 처음부터 끝까지 새롭게만드는것이 아닌 기존에 쓰던 특정 부분들을 가져오면서 만들어야하는 경우가 많았습니다. 이말이 무슨의미인지 모르실수도 있겠지만 쉽게 생각하면 이런식입니다.

 

누군가 긴 세월에 걸쳐서 움직이는 자동차를 만들었다고 생각해봅시다. 어느날 차가 망가져서 작동하지 못할때 소유주는 고민을 합니다. 차를 고쳐서 써볼까? 아니면 새로 하나 만들어달라고 할까? 고쳐서 쓰기에는 너무 오래되어서 안될것 같고 새로 만드는것이 좋겠다라고 생각할텐데요. 문제는 비용적인 부분입니다. 전체를 새로 만들자니 이전에 쓰던 부품이나 엔진을 가져다가 재활용하면 뭔가 비용적으로 절약될것 같았거든요. 아니면 손에 익숙한 핸들만이라도 갖고 오면 그 익숙함을 이어갈수 있으니 좋을것도 같구요. 그래서 예전껄 계속 써달라고 부탁을 합니다.

 

새롭게 프로젝트를 시작한 분들에게는 이때부터가 진짜 시작입니다. 오래전에 개발된 것을 하나씩 뜯어봐야하기때문이죠. 예를들어 엑셀을 밟으면 어떤식으로 속도가 올라가는지 그러려면 무엇무엇이 필요한지 순서는 어떻게 되는지를 알아야 특정 부분만 가져와서 쓸수 있기때문이죠.

 

하지만 문제는 자세하게 코드에 대한 설명(주석)을 달거나 매뉴얼에 상세한 내역을 기록해서 주는 경우는 거의 없다는 것이죠. 때문에 분석하는 기간만해도 엄청난 시간과 노력이 필요하죠. 그렇다보니 정해진 기간내에 프로젝트를 마무리하기 위해서는 야근등이 많아지는 구조로 변질되는 케이스가 많았습니다. 때문에 이런 이슈로 이직 또는 다른 업무 업종을 고민하는 분들도 늘었습니다. 하지만 이제는 이들이 인정받는 세상이 오고 있습니다.

 

근무환경의 개선은 모르겠지만 금전적으로 보상을 받을수 있는 형태로 환경과 시각이 변화되기때문이죠. 그래서인지는 모르겠지만 요즘에는 코딩교육을 받는 분들이 많이 생겼습니다. 인터넷에서 공부를 개별적으로 하는 분들도 많이 있는데요. 비용이 들지 않는 방법을 찾는 분들은 오픈튜토리얼(opentutorials.org)사이트등에서 생활코딩과 같이 무료로 받을수 있는 온라인 수업을 해보시면 좋을것 같군요. 웹 HTML에서 부터 시작해서 자바스크립트 Ajax, Node.js, Python, PHP, JAVA, 데이터베이스등등 수많은 정보를 본인 노력만으로도 확인하고 학습해보실수 있기때문입니다. 소프트웨어를 개발한다는것은 많은 시간과 노력이 필요합니다. 반복적인 연습과 실제 코딩으로 이를 확인해보실수 있으니 확인해보세요.

댓글0