[Restrospective] 웹 프로그래밍 마스터 과정 - 3개월 회고
2018-12-03 ~ 2019-02-22 웹 프로그래밍 마스터 과정 수강
오늘을 마지막으로 3개월 간의 ‘웹 프로그래밍 마스터’ 과정이 끝났다.
정신없이 지나간 지난 3개월을 되돌아보고자 한다.
0. 3개월 전의 나는?
“프로그래밍은 처음입니다.”
개강일, 자기소개로 처음 했던 말이다.
전공과 전혀 관련없는 회사를 다니다가,
전공과도, 회사와도 전혀 관련이 없는 학원에 오게 되었다.
개강 전, 한달 정도를 Java 기본서를 보며 도대체 무슨 말인지 모르겠다는 생각을 많이 했다.
과연 학원 진도를 쫓아갈 수 있을까 잔뜩 걱정을 하고 개강을 맞이했다.
1. 무엇을 배웠을까?
1) 수업
- 객체 지향을 중심으로 Java 기본 문법
- Java Network
-Web Server 구현
-Chatting Server 구현 - Http Protocol
- JSP/ Servlet
-게시판 구현 - DBMS_ MySQL
- Spring Framework
-Spring Core
-Spring MVC
-Spring JDBC
-Spring Data JPA
-Spring Security - Spring Boot
-쇼핑몰 구현 - Git
- Docker
2) 개인 공부
- Algorithm
- GitHub Blog
- HTML/CSS
- 정보처리기사
2. 3개월 동안의 나는?
“성실했던 나에게 셀프 박수”
눈을 뜨고 있는 동안에는 공부를 하려고 노력했다.
물론 멍하니 시간을 보내거나 슬럼프에 빠져 하루를 통으로 날린 적도 종종 있었지만,
전체적으로 보면 성실한 자세였다고 평가하고 싶다.
아침 10시부터 저녁 10시까지 학원을 지키고,
밤을 새서 GitHub Blog를 만들고,
학원 가는 전철에서 정보처리기사 문제집을 풀고,
자장가로 YOUTUBE 자료구조 강의를 틀어놓고,
10시까지 공부하고도 시간이 부족하다며 총총 걸음으로 집으로 향하고,
친구들과의 불금도, 주말 늦잠도 나와 상관없는 일인양 노력했다.
30년 인생동안 이정도로 무언가에 푹 빠져서 지냈던 적은 없었다.
오직 프로그래밍 생각만 했던 3개월이었다.
완벽하진 않았다.
아쉽게 보낸 시간도 있었지만,
그래도 성실하게 시간을 채웠다.
3. 나의 프로그래밍 실력은?
”???”
커리큘럼은… 나에게 버거웠다.
‘오늘은 이러한 개념을 배웠다’가 아니라
‘오늘은 이러한 개념이 존재한다는 걸 알았다’로 끝나는 날이 훨씬 많았다.
내 이해력이 조금 더 좋은 편이었다고 해도
단기간에 너무 많은 것을 소화해야 하는 커리큘럼이라 처음인 나에게는 버거웠을 것이다.
지금껏 배운 개념에 대해서 설명하라면,
강사님 코드를 참고하지 않고 쇼핑몰을 구현하라면
나는 어느정도까지 할 수 있을까.
나에게 수많은 물음표가 남았다.
4. 오늘의 나는?
“잘하고 싶다”
초등학생때부터 지금까지 영어공부를 몇년을 했더라…
하지만 유창한 영어를 구사하지는 못한다.
Java는 3개월을 배웠다.
잘하면 이상하다.
중요한 것은 ‘잘하고 싶다’는 생각을 한다는 것이다.
지난 3개월 간 공부가 결코 쉽지 않았다.
하지만 새로운 것들을 배울 때마다 ‘새로운 세계’가 열리는 기분이었고,
이해도와는 별개로 긍정적인 느낌이었다.
3개월 전의 내가, 존재하는지 조차 몰랐던 세계가 잔뜩 열려있다.
그것들을 굉장히 낮은 수준으로 이해하고 있지만,
긍정적인 마음으로 바라보고 있다.
5. 앞으로의 3개월은?
“프로젝트”
앞으로 3개월 간 지금껏 배운 기술을 이용해서 프로젝트를 진행한다.
앞서 말했듯이 배운 것에 대한 이해도가 낮은 수준이라
복습을 하고 프로젝트에 적용하는 방식으로 진행해야 한다.
지금까지는 진도를 따라가기 위해 기술에 대한 이해보다는
예제에 바로 적용시켜 에러없이 돌아가는 것에 치중했다.
프로젝트를 하면서는 기술에 대해 충분히 이해하고 활용할 수 있도록 해야겠다.
다른 팀원과 함께 진행하는 프로젝트라서 협업이라는 관점에서도 노력이 필요하지 않을까 싶다.
커뮤니케이션 관련 업무를 했고, 개인적으로도 타인과 소통하는 것을 어렵다고 생각하지는 않는다.
역시 기술에 대한 낮은 이해도가 가장 큰 걸림돌이다.
이제 프로그래밍을 시작하는 입장으로, 조금 더 멀리보면 신입의 입장으로
당분간 기술에 대한 나의 이해도는 주위 사람들과 비교해서 낮은 수준인 편에 속할 가능성이 크다.
모르는 부분이 있으면 빨리 인정하고, 프로젝트 진행에 문제가 되지 않기 위해 팀원에게 공유하고,
부족한 부분을 부지런히 공부해 나가는 과정을 한동안은 반복해야하지 않을까 싶다.
모르는 것은 잘못이 아니다.
모른다는 것을 알았는데 계속 모르면 잘못이 된다.
지금 나는 모르는 것이 상당히 많지만 그것이 잘못이 되지 않기 위해 부지런히 공부할 것이다.
“정보처리기사”
비전공자로서 최소한의 배경지식을 갖추고 있다는 것을 증명하기 위해 도전했다.
DB나 운영체제 같은 과목은 프로그래밍에 바로 도움이 된다.
지금 당장은 도움이 되지 않는 과목들도 깊이 있는 프로그래밍을 위해서는 필요한 부분일 것 같다.
설사 프로그래밍에 전혀 도움이 되지 않는다고 하더라도 재미있을 것 같다.
현대인이라면 누구나 컴퓨터를 쓰지만, 이것을 온전히 이해하는 사람이 얼마나 될까.
아주 얕은 수준이지만 Web에 대해 배우고 ‘유레카’를 외쳤던 것처럼,
컴퓨터라는 세계를 이해해보는 것도 신기한 경험이 될 것 같다.
시간 관계상, 당장은 시험 통과를 목표로 공부하고 있지만,
컴퓨터, 데이터에 대한 깊이 있는 이해를 위해서 꼭 공부 계획을 세워야겠다.
“알고리즘”
‘알고리즘을 왜 공부하냐?’ 는 질문에는 다양한 의견이 있는 것 같다.
프로그래밍과 알고리즘의 상관 관계를 다양한 관점에서 보고 결론을 내릴 수 있는 수준은 아니지만
최소한 나에게는 알고리즘이 도움이 되고, 알고리즘이 필요하다.
알고리즘을 풀면서 Java 문법이나 다양한 클래스의 사용 방법을 익히고 있다.
어렵지 않은 코드이긴 하지만, 더 간결하게 작성할 방법을 고민하는 과정을 반복하고 있다.
그리고 많은 기업에서 입사 시험으로 알고리즘 문제를 내기 때문에 알고리즘 공부가 필요하다.
꾸준히 하는 방법 밖에 없는 것 같다.
매일 문제를 풀어서 다양한 유형을 접해보고
다른 사람 코드와 비교해보며 다양한 접근 방법을 배워야겠다.
6. 글을 마치며
“누가 볼 수도 있는 글인데”
3개월 동안 배우고도 아무것도 모르겠다며 창피한 내용의 글을 쓰는 이유는
지금이 시작이기 때문이다.
다시 3개월이 지나고
지금 이해하지 못하는 것을 그대로 이해하지 못하면
이 글은 창피한 글이 될 것이다.
하지만
지금 이해하지 못하는 것을 조금이라도 이해하게 되면
이 글은 온전한 이해로 향하는 과정의 시작이 된다.
지금보다 더 많은 것을, 깊이 이해하기 위해서 계속 부지런히 공부할 예정이다.
“누가 보지도 않을 글인데”
이렇게 공들여 쓰는 것은 나를 위한 것이다.
비전공자이고,
적지 않은 나이에 프로그래밍을 시작했고
3개월을 공부해보니 프로그래밍을 위해 태어났다거나 하는 그런 천재는 아닌 것 같다.
당장 학원에서만 보더라도
전공자나 나보다 어린 친구들, 나보다 잘하는 친구들이 많다.
누구처럼 컴공과를 나왔더라면 쉽지 않았을까…
누구처럼 몇 살만 어렸더라도 열심히 하지 않았을까…
하지만 지금 나에게 다른 사람과의 비교는 의미가 없다.
컴공 친구가 4년간 배웠던 걸 당장 배울수도 없고,
이미 먹어버린 나이를 되돌릴 수도 없다.
지금 나의 상태를 그대로 인정하고
내가 할 수 있는 일에 집중한다.
‘어제의 나보다 오늘의 내가 좀 더 발전했는가’
온전히 나에게만 집중해서 더 나은 사람이 되기 위해 시간을 보낼 것이다.
누가 알아주지 않더라도
아무리 조금씩 발전하더라도
그것에 의미가 있다는 것을 잊지 않도록 쓴다.
Leave a comment