사이드 프로젝트나 토이프로젝트가 무엇인가요?
개발 공부를 하면서 사이드 프로젝트 또는 토이 프로젝트라는 단어를 많이 들어봤습니다.
정확히 이게 무엇인지 잘 모르겠는데, 그냥 개인 프로젝트를 말하는건가요?
이것을 많이 해놓으면 어떤점이 좋은지 알고 싶습니다
개인 실력 향상을 위해 하는 프로젝트를 사이드 프로젝트, 토이 프로젝트라고 합니다.
무거운 개념은 아니고 Toy라는 단어가 들어간 만큼 재밌게 진행하면 되는 프로젝트입니다.
토이 프로젝트의 장점은 크게 두 가지가 있는데.
1. 포트폴리오가 된다.
결국 프로그래밍의 본질은 프로그램을 만드는 것 입니다.
그렇기 때문에 프로그래머를 평가할때 물론 컴퓨터 구조, 알고리즘, 자료구조 등등의 지식을 보기도 하겠지만.
가장 크게 보는 것은 그 프로그래머가 무엇을 만들었는지 입니다.
오히려 만든 프로그램을 통해서 이 사람의 지식이 얼마나 되는지 가늠할 수 도 있기 때문입니다.
2. 프로그래밍 실력 향상에 큰 도움이 된다.
위에서도 말씀드렸다시피 프로그래밍의 본질은 프로그램을 만드는데 있습니다.
물론 이론적인 것을 공부하는 것도 굉장히 중요합니다만 이를 활용하는 방법은 더욱 중요합니다.
제 주변친구들을 보았을때도 가장 빠르게 성장하는 친구는 자신이 가진 지식을 활용해 계속 무언가를 만드는 친구였습니다.
즉 토이/사이드 프로젝트는 질문자님이 가지고 계신 지식을 활용하는 법을 익히는데 도움이 됩니다.
그리고 이는 질문자님의 프로그래밍 실력을 비약적으로 향상시켜줄 것 입니다.
토이/사이드 프로젝트를 많이해보세요 :)
토이 프로젝트는 보통 개인 프로젝트를 이야기 합니다.
프로그래밍이라는 것이 하면 할수록 실력이 늘어나게 됩니다.
물론 똑같은 것을 기계적으로 반복한다면 실력이 늘어나지 않지만 더 좋은 방법을 고민하면서 만들게 되면 실력이 늘어날 수밖에 없습니다.
10개의 비슷한 프로젝트를 만들어도 코드는 많이 달라질 수 있기 때문입니다.
사이드 혹은 토이 프로젝트는 자신이 주 업무로 하는 회사 업무등과 별도로 본인의 자율 의사로 진행하는 프로젝트를 말합니다.
보통 개인 포트폴리오용 / 부업용 / 기술 숙련도 향상 등을 이유로 많이들 진행하시며
이렇게 진행된 자료를 가지고 취직이나 다음 이직 등에 포트폴리오 자료로써 제출하는 경우가 가능하고.
해당 프로젝트에서 매출이 일어나서 부업삼아 계속 진행하시는 분들도 많습니다.
안녕하세요 현직 안드로이드 앱 개발자 홍드로이드 라고 합니다.
질문 주신 사이드 (side) 프로젝트와 토이 (toy) 프로젝트는 서로 비슷한 말이라고 보시면 되는데요 !
사이드 플젝은 말 그대로 메인이 아닌 서브 적으로 개발하는 것을 뜻하며,
토이 플젝 역시 말 그대로 장난감처럼 가지고 놀만한 간단한 기획으로 구현되는 프로젝트를 의미합니다.
개인 앱이나, 회사 엔터프라이즈 급 같은 규모가 어느정도 있는 프로젝트와는 다르게 개발 기간이 짧은 느낌이라고 보시면 됩니다.
도움이 되셨을런지 모르겠네요 ㅎㅎ
좋은하루보내세요 !
안녕하세요
토이 프로젝트 / 사이드 프로젝트는 개인적으로 진행하는 프로젝트를 말합니다. 보통 회사에서 진행하는 프로젝트가 메인이 될 것이고 퇴근 후 혼자 혹은 친구들과 취미로 만드는 프로젝트를 토이 프로젝트라고 합니다.
토이 프로젝트로 앱 혹은 게임을 만들고 그걸로 부수입을 얻는 분들도 많습니다. 또한 개발자로서 포트폴리오가 쌓이면 경력에도 기술할 수 있는 이점도 있고요. 더불어 토이프로젝트를 통해서 겪은 이슈가 회사 프로젝트에서도 나올 수 있는데요. 이때 이미 토이 프로젝트로 이슈를 겪어봤기 때문에 이슈 해결을 더 쉽게 할 수 있겠죠
개발력 향상, 부수입 등 토이프로젝트로 얻을 수 있는 이점은 많습니다.
안녕하세요 :)
'side' 라는 표현 자체가 'main' 업무 외에 다른 일을 의미하는 것임은 쉽게 알아차리실 수 있을 것 같습니다.
보통은 말씀하신 것처럼 개발 능력 향상이나 관심사/취미 차원에서 개인적으로 시도해보는 프로젝트들을 의미합니다만, 경우에 따라서는 회사 업무 내에서도 회사의 주 비즈니스와 관련된 프로젝트가 아닌 팀 내에서 소소하게 POC(Proof of Concept) 관점에서 시도하는 것들에 사이드 프로젝트 또는 토이 프로젝트라는 용어를 사용하기도 합니다.
개인프로젝트이든 업무관점이든지 간에, 공통점이라면 본인의 주업무에 지장을 주지 않는 선에서 진행한다는 점입니다. 그리고 그러한 지속적인 시도가 축적되었을 때의 장점은 여러가지 면에서 생각해 볼 수 있습니다.
첫째, 꾸준한 개발 능력 향상을 기대할 수 있습니다.
개발업무는 기본적으로 논리적인 사고를 요하는 작업이지만 실제 개발 생산성에 있어서는 그것만으로는 충분하지 않고, 다른 개발자들이 만들어 둔 라이브러리/프레임워크를 사용하는 숙련도도 필요하고, 같은 문제를 해결함에 있어서도 어떤 설계가 좋은지에 대한 많은 고민과 경험이 필요합니다. 이런 능력은 많은 문제에 부딪혀 보면서 고민해본 경험이 축적되어야만 자신의 것으로 습득되고 이후 학습에 있어서도 더 가파른 학습 곡선에 올라탈 수 있게 되죠.
둘째, 결과물이 주업무의 생산성에 기여하거나 새로운 부가가치를 생산하는 기회로 삼을 수 있습니다.
사이드 프로젝트 또는 토이 프로젝트를 시작하게 되는 동기를 생각해보면, 당장 꼭 필요하지 않더라도 나중에 필요할 것 같은 감에서 시작하게 되는 경우가 많습니다. 대표적인 예가 주업무에 당장 적용하기에는 부담스럽지만(위험성 측면, 혹은 기존의 소스코드를 크게 재설계해야 하는 경우) 향후 유용하게 활용될 것으로 예상되는 신규 기술의 테스트입니다. 이런 테스트는 실패하더라도 'side' 프로젝트이므로 부담이 적고, 그 효용성이 충분하다 판단되면 본격적으로 도입을 검토해 볼 수 있게 됩니다.
가끔은 사이드 프로젝트를 부업의 개념으로 시도하시는 분들도 있긴 합니다만, 보통은 수익이 되지 않더라도 사이드 프로젝트를 수행하는 것 자체에 의미를 두는 경우가 많으므로, 수익보다는 경험과 성취감에 좀 더 방점을 두는 것이 일반적인 것 같습니다.
셋째, 개발역량을 증명하는 결과물로 활용할 수 있습니다.
개인 프로젝트로서 시도하는 경우들은 GitHub 등을 통해 결과물을 공유하는 경우가 많습니다. 또는 이미 공개된 오픈소스 프로젝트에 기여하는 것도 한 방법이 되겠고요. 그리고 당연하게도 그 결과는 git 의 로그로 남기 때문에 얼마나 개발에 꾸준히 관심을 갖고 시도해왔는지, 또 그 성과는 어떠한지(공개한 프로젝트에 다른 개발자들의 관심도, 타 프로젝트에 기여한 내용과 그 효과 등) 투명하게 공개되기 때문에 취업이나 이직에 있어서도 본인의 개발역량을 증명하는 좋은 수단이 됩니다.
도움이 되셨으면 좋겠습니다 :)