본문 바로가기
주간 개발 일지

2022 회고

by 델버 2023. 1. 6.

- 2022년은 내가 평소 하던 일과 다른 개발 공부를 시작한 의미 있는 해다. 또한 내 적성에 잘 맞는 일을 찾은 아주 행복한 해이기도 하다. 그래서 내가 왜 개발을 시작했고 어떤 발자취를 남겼고 앞으로 어떻게 나아갈 생각인지 정리해 보려 한다.

왜 개발을 선택했는가

- 요즘 취업 준비를 하느라 이 질문에 대한 답변을 어떻게 해야 될까 고민이다. 취직, 다른 사람들이 많이 해서, 접하기 쉬워서 등 다른 사람의 대답을 보았지만 사실 내 대답은 대부분의 답과 멀기도 하고 길기도 해서 어떻게 짧게 말할까, 이걸 말한다고 과연 청자가 이해할 수 있지가 너무 어려웠다.

- 책이 좋아서 국문과에 갔다. 학교가 좋은 이유가 도서관이 크고 장서량이 많아서였다. 그래서 그곳에서 책 읽느라 학기보다 방학이 2배로 바빴다. 분야 안가리고 공부하는 걸 좋아해서 흔히 꿀교양이라 불리는 것과 거리가 먼 미생물학, 미시경제학, 정치학 등 내 전공과 다른 과목을 선택했다. 그리고 방학엔 배운 것들과 관련된 책을 읽고 공부했다. 하지만 도서관에 아무리 장서량이 많아봤자 최신 지식을 공부할 수 없고, 인터넷엔 정보가 없거나 연구자들의 이야기를 들으려면 1년에 한 번 열리는 세미나나 영문 논문을 읽어야 된다는 것이었다. 이런 고민을 가지고 나는 대학원에 가려고 했다.

- 그런 와중에 개발하는 주변 지인들에게 고민을 이야기했고, 한 번 개발을 해보지 않겠냐 말했다. 인터넷에 무료 강의도 많고 심지어 많은 현직 전문가가 아티클을 쓰거나 서로 공부한 내용을 주기적으로 올리는 문화가 있다는 것이었다. 게다가 바로 전문가에게 직접 물어볼 수 있다는 것, 그것도 가볍게 댓글로! 무언가를 만들고 싶으면 그냥 인터넷에서 검색하면 대부분의 지식을 보고 공부할 수 있다는 것이 너무 좋았다.(spring의 document를 보고 나는 대학교에서 큰 도서관을 보고 느낀 행복한 감정을 다시 느꼈다)

- 결론은, 개발에 대한 문화와 공부가 좋아서 선택했다고 할 수 있다.

 

국비학원을 왜 갔는가

- 혼자서 공부할 수 있었지만 나는 국비학원을 선택했다. 이전에 세미나나 스터디 같은 것을 자주 했던 나는 함께 공부한다는 것의 중요성을 잘 알고 있었다. 사실 국비학원은 내 공부보단 다른 사람과 만나서 프로젝트도 하고 공부하고 싶어서 간 것이었다. 학원에서는 나는 혼자 공부한 것보다 그 좋은 사람들과 같이 한 것들에서 많이 배웠고 깨달았다. 다른 사람의 코드를 수시로 보면서 배우고 나도 보여주고 공유하면서 공부했다. 

- 혼자 만드는 프로젝트는 퀄리티가 팀 프로젝트보다 높을 수 있다. 하지만 누군가와 같이 만들어 낸 것은 혼자서는 절대 만들 수 없는 것이다. 혼자서 아무리 열심히하고 잘한다고 한들, 다양한 사람의 습관, 이해, 생각이 코드에 어우러져서 만들어 낸 결과물을 만들 수는 없다. 나는 이 점을  학원에서 기대했고, 충분히 느꼈다고 생각한다.

 

스프링을 선택한 이유

- 학원 다닐 때는 중간 중간 필요한 부분을 채우는 것으로 개인 공부 시간을 보냈다. 안드로이드 배울 땐 학원에서 알려주지 않은 코틀린을, JSP 때는 SQL과 기초 웹 공부로 채웠다. 그리고 프로젝트로 JSP로 스터디 룸 예약 웹 서비스를 만들었다. 그런데 JSP를 활용해서 API나 라이브러리를 사용하려고 할 때 문제가, 인터넷에 정보가 스프링 기반을 예시로 한 것이 대부분이었다. 또한 여러 구현 문제나 반복적인 개발(JDBC)에 문제점을 느꼈다. Connection을 close 해주는 것을 까먹어 DB가 터지고 있고, 예외가 터지면 문제 부분을 찾는데 시간을 보내고, 테스트에 대해 몰라서 눈으로 직접 계속 확인하고 하는 문제들을 검색할 때마다 스프링에서 이런 것들을 지원해주거나 간단히 해결할 수 있다고 읽었다. 그렇게 학원을 수료하고 바로 스프링을 공부했다.


- 앞에는 주저리 왜 올해는 여기까지 왔는지에 대해 주저리주저리한 것이었고 이제는 내가 2022년에 배우고 공부한 것들을 정리해보려 한다.

학원

- 학원에서는 Java, Android, ARCore, HTML, CSS, JS, JSP를 배웠다. 중간 중간 Kotlin, Android Jetpack, SQL를 끼워넣었다. Kotlin을 공부하면서 다른 언어를 배우는 것에 두려움을 없애고 재미를 얻었다. 매주 과제가 있어서 많이 채우진 못한 점이 아쉽다. 학원 수업이 끝나면 과제를 하거나 velog에 공부한 것을 정리했고 주말엔 토,일 빠짐없이 학원사람들과 과제 스터디를 했다. 먼저 과제를 풀었으면 다른 사람을 도와주거나 도움받았는데, 이때 다른 사람의 코드를 보는 것에 배운 점이 굉장히 많았다.

스프링

- 현재 김영한님의 스프링 완전 정복을 다 수강하고 스프링 부트와 JPA 실무 완전 정복을 다 들어간다. 앞에 말한 JSP로 개발할 때의 문제점과 불편한 점을 계속 강의를 들을 때마다 "아 이때 이거 알았더라면"하면서 깨우쳤다. 

- 어느 정도 들은 상태라 토이 프로젝트로 게시판을 만들고 있다. 게시판을 만들면서 느낀 것은 김영한님의 강의는 스프링에 대한 강의이고 그 외의 것은 토이 프로젝트로 쌓아야함을 느끼고 있다. 그래서 도서관에서 스프링이나 스프링 부트 프로젝트 예제가 들어있는 책들을 하나씩 빌려가면서 만들어보고 좋은 부분은 내 게시판 프로젝트에 쌓아보고 있다.

- 아마 게시판을 다 만들고 나면 책과 관련된 도서 관리 API를 만들면서 취업 준비를 집중적으로 할 것 같다.

 

코딩 테스트(C++, JAVA)

- Java로 코테 문제를 풀다가 속도 문제로 계속 끙끙댔더니 주변 개발하는 친구들이 C++를 공부해보라고 했다. 그래서 바킹독님의 알고리즘 강의로 코테와 C++ 공부를 같이 했다. 문제는 C++로 공부했더니 Java로 과연 코테를 볼 수 있을까 생각이 들어 요즘엔 알고리즘 자료구조는 공부한 것을 C++에서 Java로 전환하면서 문제를 풀고 있다.

- 코테 풀면서 매번 고민인 것은 빨리 푸는 것도 중요하지만 가독성 있게 매서드로 따로 빼거나 객체를 만들어서 구현하는 것을 코테에서 해도 되는 걸까 생각한다. 객체지향 언어를 쓰면서 객체지향적으로 코딩테스트를 볼 수 없나?하는 생각인 것이다. 정답만 맞추면 장땡은 조금 찝찝해서 드는 고민이다.

- 평소 서점만 보면 달려가는 사람이라 책이 빠질 수 없다. 나는 이제껏 책을 목적을 갖고 읽지 않았다. 필요에 의해서 읽은 것이 아닌 재미를 위해서 읽었다. 그런데 개발을 공부하고 기술 서적을 읽기 시작했는데 필요+재미가 되자 기술 서적만 읽게 됐다. 최근엔 스프링 부트를 공부했더니 스프링 관련 서적을 읽을 수 있게 되어 너무 좋았다. 기술 서적은 이제 읽기 시작해서 몇 권 완독하지 못했지만 읽을 수 있는 분야를 넓히는 행복으로 내년을 기다리고 있다.

- 그래도 올해 읽었던 것 중에 스프링 부트와 AWS로 혼자 구현하는 웹 서비스를 읽으면서 많이 배웠다. 특히 CI/CD에 대해 개념만 알고 있었던 것을 직접 해보고 mock 테스트를 구현하거나 소셜 로그인을 스프링으로 구현한 것을 지금 만드는 토이 프로젝트에 적용하고 있다. 


 

- 내년엔 취직해서 얼른 실무를 맛보고 싶다. 얼마나 재밌을까

'주간 개발 일지' 카테고리의 다른 글

2월 1주차  (1) 2023.02.05
1월  (1) 2023.01.22
12월 1주차  (0) 2022.12.04
11월 4주차  (0) 2022.11.28
주간 개발 일지 시작  (0) 2022.11.27

댓글