본문 바로가기
생각 정리/SSAFY

[SSAFY] SSAFY를 마무리하며

by mintropy 2022. 8. 5.

SSAFY의 마지막

SSAFY가 끝난지는 한 달이 넘었다. 프로젝트들도 정리하고, 여러 고민을 하며 시간이 꾀나 많이 지났다. 아마 마지막 SSAFY관련 게시글이 될 것 같다. 나름 길었던 1년의 과정을 정리하고, 혹시나 나중에 읽게 된다면 누구에든 도움이 되었으면 좋겠다.

 

SSAFY의 시작

SSAFY를 신청할 때 개발자라는 큰 방향성은 고민했지만, 상세한 방식과 과정은 고민해보지 못했다. 다양한 것을 준비하고 공부한다고 생각했지만, 지금와서 돌아보면 방향성이 틀렸다고 생각되는 부분도 많고, 섬세한 고민을 하지 않으려 했던 것 같다. 단순하게 접근해서 해결할 수 있을 것이라 생각했다.

지금은 전공자는 코딩테스트로 시험 보는 것으로 알고 있는데, 당시에는 적성 검사와 같은 방식의 시험을 모두를 대상으로 실행되었다. 수학 문제 + 간단한 코딩 문제와 같은 느낌이라 크게 어렵다는 느낌은 없었지만, 반대로 다른 모두가 나보다 잘하지 않을까 라는 고민도 했다. 이후 면접은 약 10~20분 정도 이루어졌던 것으로 기억한다. 확실한 기준은 알 수 없지만, 비전공자들에게는 왜 개발자가 되고 싶은지, 무엇을 하고 싶은지, 그리고 1년간의 계획이 있는지 등을 주로 물어봤던 것 같다.

 

1학기

1학기는 강의를 기반으로 진행된다. 강의는 크게 두가지, 알고리즘과 웹 관련 강의로 구성되는데, 아마 임베디드반, 모바일 반에서는 해당 내용을 학습하는 것으로 알고 있다.

 

강의

강의는 알고리즘과 웹을 번갈아가며 진행한다. 약 3~4주 정도를 주기로 진행하는데, 때로는 조금 익숙해지려 하면 다른 분야로 넘어가는 과정이 자주 반복되어 불편하기도 했다. 그나마 다행인 부분은 알고리즘과 관련하여 미리 학습한 것이 있어 조금은 수월했다는 부분이다. 주변의 다른 교육생을 살펴보았을 때, 관련 지식이 없는 경우 많은 어려움을 겪는 것을 보았다. 아무리 SSAFY에서 모든 것을 학습할 수 있다고 하더라도, 최소한의 학습은 하는 것이 좋다고 생각한다. 적어도 합격한 후 입과 까지 1~2개월가량 시간이 있는데, 이 기간에 언어나 알고리즘과 관련한 학습을 하는 것을 권장하고 싶다.

전 과정이 온라인으로 진행되어 강의는 유튜브 라이브로 들었다. 학교에서라도 온라인 수업을 해봤다면 알겠지만, 상당히 지루한 과정이다. 나는 때때로 라이브 채팅에도 참가하며 강의도 듣고 공부도 했다. 현장 수업을 한다고 하더라도 유사하게 진행되겠지만, 주변의 도움을 받으며 더 생산적으로 진행할 수 있을 것 같다.

 

알고리즘

SSAFY를 시작할 때, 백준 골드 2정도 되었고, SSAFY에서 진행하는 알고리즘 수업의 난이도는 수월하게 진행할 수 있었다. 전공자 반은 비전공자 반에 비하여 조금 더 높은 난이도를 진행했던 것으로 알고 있지만, 나는 그 정도 난이도도 해결할 수 있을 것이라 생각했다.

많은 교육생을이 그러하듯 알고리즘 문제 풀이 스터디로 진했했는데, 내가 진행했던 스터디에서는 실버 1~골드 5 전후의 난이도 문제에서 시작했고, 나도, 스터디를 같이 진행한 동기들도 많이 고민하고 문제를 해결하는 시간을 가질 수 있었다. 그리고 알고리즘 수업의 시간은 생각보다 길게 측정되어 있어 어느 정도의 내공이 있는 교육생이라면 스스로 공부할 수 있는 시간도 가졌다.

 

1학기 과정에서 백엔드, 프론트엔드를 전부 배운다. 나를 포함하여 많은 경우는 1학기가 끝나기 전에 희망 분야를 선택한다. SSAFY에서 아쉬웠던 점은 웹 관련 학습과 프로젝트가 대다수라는 부분이기는 하지만, 나처럼 빅데이터, 인공지능 등에도 관심이 있었다면 2학기 프로젝트를 통하여 조금 더 샆이 공부하고 프로젝트에 적용하는 시간을 가질 수 있을 것이다.

나는 이 때 학습한 것들을 기반으로 지금도 공부하고 있다.


2학기

프로젝트와 관련해서는 다른 글을 통하여 작성했기 때문에, 이 글에서는 프로젝트 외적으로 했던 고민이나 결과, 성과물 등을 포함할 것 같다.

 

세 번의 프로젝트를 하며 지속적인 팀빌딩 - 주제 선정 - 프로젝트 설계 - 프로젝트 진행의 과정을 진행해야 한다. 프로젝트 진행은 나름 즐겁고 생산적인 시간이지만, 다른 과정은  때로는 지루하고 그 과정이 스트레스로 돌아오기도 한다. 가능하다면 1학기를 진행하며 3~5명 정도의 팀원을 구해두는 것이 좋다고 생각한다. 2학기 첫 프로젝트는 전공자, 비전공자가 한 팀에 모두 있어야 하기 때문에 1학기  동기들만으로 진행할 수 없기 때문이다. 또한, 모든 팀원을 새롭게 구하는 과정을 조금은 줄일 수 있다.

 

이제는 SSAFY에서 비전공 자반 JAVA수업도 하는 것으로 알고 있는데, 이전까지는 Python으로만 진행했고, 이는 큰 문제 중 하나로 작용한다. SSAFY 교육생과 내부에서도 잘 알고 있는 문제중 하나로, 전공자가 백엔드, 비전공자가 프런트엔드를 담당해야 한다와 같은 부분이 암묵적으로 이루어졌기 때문이다. 이 부분과 관련하여 두 가지 방향으로 이야기를 나누고 싶다.

첫 번째는 짧은 기간 프로젝트를 진행하기 위해서는 새로운 것을 배우기는 어렵다. SSAFY에서도 하나의 언어로 교육을 진행하는 것이 옳다고 생각하지만, 학습의 난이도와 시간 등을 고려하여 Python을 교육하는 것 같다. 하지만 이와 같이 절반은 Python을, 절반은 JAVA를 학습한 경우, 팀 구성을 하는 과정에서 걸림돌로 작용하곤 했다. 만약 Python을 학습한 비전공자 교육생과 JAVA를 학습한 전공자가 모두 백엔드를 지망한다면 JAVA를 선택한 경우가 거의 대부분이기 때문이다. 또한 팀빌딩에서도 JAVA를 모르는 백엔드 포지션은 인기가 없다.

두 번째는 장기적으로 보아 Python 백엔드 직무(Django, Flask, FastAPI)가 많지 않다. 물론 언어와 프레임워크는 익숙하면 좋고, 그렇지 않다 하더라도 다른 언어, 프레임워크에 익숙하다면 도움이 된다고 말하지만 회사와 직무 선택에 장점으로 작용한다고 보기는 힘들다고 생각한다.

따라서 JAVA반에서 spring, spring boot를 학습하는 것이 장단기적으로 적합하다고 생각하고, Python 등 언어를 활용한 알고리즘 풀이, 빅데이터, 인공지능 등의 지식이 있다면 해당 분야만 따로 학습하는 것이 좋다고 생각한다.

 

일부 교육생은 프로젝트는 프로젝트대로 진행하고, 나머지 시간은 자신의 취업활동 및 공부에 할애하기도 했지만, 많은 교육생들은 프로젝트에 크게 집중하여 자투리 시간이 많지 않았다. 물론 무엇이 옳고 그른지 판단하기는 어렵지만, 전반적으로 시간이 부족하다는 느낌을 받을 것이다. 어떠한 방식을 선택하고, 무엇을 할지 선택하는 것의 기준을 만들기는 어렵지만, 그러한 선택으로 후회 없는 시간을 가졌으면 좋겠다.

 

SSAFY를 마치며

1년의 과정을 통하여 많은 것을 배우고 이루었고, 시도하지 못하고 충분히 익숙해지지 못하여 아쉬운 부분도 많다. 하지만 내가 잘하고, 아는 것을 알아가는 시간이었고, 다른 개발자들을 알아가는 시간이었다. 때로는 긴 기간 동안 조금은 느긋하게 지내기도 했지만, 전체 과정이 매우 만족스러웠다.

 

나는 SSAFY를 통하여

1. 좋은 동기들을 만났고,

2. 취업 과정에서 필요한 능력과 준비과정을 알게 되었고,

3. 알고리즘 공부를 더 깊게 하는 것보다, 특정 수준에서 높은 숙련도를 쌓을 수 있었으며,

4. 웹 기반 프로젝트를 진행하며 배웠던 다양한 기술을 적용 및 확인할 수 있었다.

 

 

댓글