현재 컴퓨터 프로그래머와 소프트웨어 개발자는 전 세계적으로 가장 부족한 직군 중 하나입니다. 기술 산업이 인재 양성 속도보다 훨씬 빠르게 성장하고 있기 때문인데, 일부 기업은 자격을 갖춘 엔지니어에게 최대 20% 더 높은 연봉을 제시할 정도입니다.
모바일 앱 시장만 해도 2023년까지 무려 9,350억 달러의 매출을 올릴 것으로 전망됩니다. 이렇게 거대한 파이가 형성되고 있음에도 불구하고, 이를 누릴 수 있는 인력은 절대적으로 부족한 실정입니다. 참고로 2017년 미국에서는 컴퓨터 공학 졸업생이 5만 명에 불과했지만, 컴퓨팅 분야 채용 공석은 무려 50만 개에 달했습니다.
빠르게 성장하는(그리고 높은 보수를 자랑하는) 이 업계에 합류하고 싶으신가요? 그렇다면 아래에서 소개하는 앱과 사이트들이 프로 수준의 코딩 실력을 쌓는 데 큰 도움이 될 것입니다.
칸 아카데미(Khan Academy)
기초를 익힌 후에는 곧바로 고급 내용으로 들어갈 수 있습니다. 드로잉과 애니메이션, 쿼리 작성, 게임과 데이터 시각화, 자연 시뮬레이션 등 다양한 프로젝트를 통해 학습하게 됩니다.
코딩을 당장 시작하고 싶다면 칸 아카데미는 훌륭한 출발점입니다. 비영리 단체가 운영하는 이곳에서는 프로그래밍 강좌를 모두 무료로 제공합니다. JavaScript, jQuery, SQL 같은 컴퓨터 언어의 기초를 배우고 싶은 학생과 성인을 위해 설계되었습니다.
모든 강좌는 자율 학습 방식이며, 동영상, 연습 문제, 아티클, 프로그램 등 활용할 수 있는 학습 자료도 풍부합니다. 웹 기반 서비스이기 때문에 컴퓨터나 모바일 기기 어디서든 접속해 학습할 수 있습니다.
틴커(Tynker)
Tynker는 어린이를 위해 설계된 앱이지만, 코딩의 기본 원리와 비주얼 스크립팅을 가르치는 데 매우 탁월합니다. 언리얼 엔진의 유명한 블루프린트 시스템 덕분에 비주얼 코딩은 요즘 큰 주목을 받고 있습니다.
비디오 게임을 만드는 것이 목표라면 Tynker가 코딩의 핵심 메커니즘을 익히는 데 도움을 줄 수 있습니다. 간단한 드래그 앤 드롭 방식을 사용하며, 게임 스테이지를 완성한 후에는 직접 플레이하면서 제대로 작동하는지 확인할 수 있습니다.
Tynker는 각 단계마다 친절하게 안내해 주기 때문에 더 빠르게 이해할 수 있습니다. 좀 더 복잡한 내용에 도전할 준비가 되었다면, 연령이 높은 어린이와 청소년을 위해 설계된 프로그램도 이용할 수 있습니다.
Tynker에는 무료 강좌도 일부 마련되어 있지만, 더 많은 프로그램을 이용하려면 유료로 업그레이드해야 합니다. 배울 수 있는 언어로는 JavaScript, Python, CSS, HTML 등이 있습니다.
또 하나 주목할 만한 점은 로봇공학 학습에도 활용할 수 있다는 것입니다. Android 또는 iOS 태블릿에 앱을 다운로드하면 직접 프로그래밍한 드론이나 로봇을 조작할 수 있습니다. 비디오 게임 제작 목적으로만 사용한다면 컴퓨터나 모바일 기기면 충분합니다.
요금제는 분기 결제 60달러부터 시작하며, 연간 120달러 또는 평생 이용권 240달러 옵션도 제공됩니다.
코드워즈(Codewars)
게임화(Gamification) 요소가 있을 때 코딩을 더 잘 배우는 사람들도 있습니다. 그런 분이라면 무술을 테마로 한 Codewars가 딱 맞습니다. '카타(kata)'라고 불리는 다양한 챌린지를 해결할수록 더 고급 강의가 잠금 해제되며, 동시에 랭크와 명예(honor) 포인트도 쌓입니다.
SQL, Crystal, Java, C++, JavaScript, Ruby 등 다양한 프로그래밍 언어 중에서 자유롭게 선택할 수 있습니다. 또한 카타를 해결하고 실력을 다지는 과정에서 도움을 받을 수 있는 개발자 커뮤니티도 함께 활용할 수 있습니다. 한 가지 언어로 시작한 뒤, 취업 경쟁력을 높이기 위해 다른 언어도 추가로 배워보는 것이 좋습니다.
실력을 충분히 갖춘 후에는 직접 카타를 제작해 커뮤니티에 도전장을 던질 수도 있습니다. 마치 실제 무술 도장처럼 말이죠!
이 플랫폼은 온라인에서 완전히 무료로 이용할 수 있습니다.
엔코드(Encode)
프로그래밍처럼 복잡한 개념은 짧게 나눠서 배우면 기억하기 훨씬 쉽습니다. 바로 그 점 덕분에 Android 전용 앱인 Encode가 코딩 학습용으로 인기를 얻고 있습니다.
정신적·육체적으로 여유가 없는 바쁜 분들에게 이상적인 앱으로, 몇 분씩 짧은 시간을 내어 학습할 수 있습니다. 다만 고급 과정으로 넘어가면 학습 시간이 다소 늘어날 수 있다는 점은 감안해야 합니다.
JavaScript처럼 수요가 높은 언어를 배울 수 있으며, 모든 강의가 인터랙티브 방식으로 진행되고 피드백을 제공하기 때문에 방금 배운 내용을 더 깊이 이해하는 데 도움이 됩니다.
솔로러른(SoloLearn)
좀 더 다재다능한 앱이 필요하다면 SoloLearn을 사용해 보세요. iOS와 Android 기기 모두에서 작동하며, 컴퓨터로 학습하는 것을 선호한다면 웹사이트를 이용할 수도 있습니다.
Python, JavaScript, Java 등 선택 가능한 프로그래밍 언어가 다양합니다. 다른 학습자들의 질문에 답하고 궁금한 점을 물어볼 수 있는 활발한 커뮤니티 포럼도 함께 운영됩니다.
경쟁심이 강한 분들을 위해서는 사이트에 리더보드도 마련되어 있습니다. 상위 학습자 탭에서는 포인트를 기준으로 실시간 순위가 업데이트되며, 포인트는 강좌 학습 시간을 늘릴수록 획득할 수 있습니다.
글로벌 리더보드 또는 언어별 리더보드(C#, JavaScript 등) 정상에 오를 수도 있습니다. 리더보드를 활용해 학습 중인 언어의 상위 랭커를 찾아두면, 막힐 때 도움을 요청할 대상을 미리 파악하는 것도 좋은 전략입니다.
프로필에는 달성할 수 있는 다양한 업적 목록도 준비되어 있습니다.
- 개발자(Developer): 작성한 코드가 업보트 10개를 받으면 획득
- 좋은 답변(Good Answer): 답변에 업보트 5개를 받으면 획득
- 선량한 시민(Good Citizen): 강의나 퀴즈에 댓글을 남기면 획득
- 구루(Guru): 한 가지 언어로 챌린지 500회 승리 시 획득
게임화는 미래 학습의 대세입니다. 흥미롭게 느껴지신다면 지금 바로 사용해 보세요.
오늘부터 코딩 학습을 시작하세요
이 목록에 있는 대부분의 플랫폼은 무료로 이용할 수 있으므로, 프로 코더가 되지 못할 핑계가 없습니다. 바쁜 일정 속에서도 학습할 수 있는 앱이 있는가 하면, 게임을 통해 가장 효과적으로 배우는 분들을 위한 서비스도 있습니다.
여러분의 동기와 학습 스타일이 어떠하든, 자신에게 맞는 프로그램은 반드시 존재합니다.