부트캠프 이야기/한화시스템 sw부트캠프 3기 19

한화시스템sw부트캠프 3기를 마무리하며

길게만 느껴졌던, 6개월이 어느새 훌쩍 끝이 나버렸다. 어제 최종프로젝트 발표를 끝내고 수료식을 통해 수강생들과 마지막 작별인사도 했다. 최종프로젝트 결과는 모든 팀이 좋은 결과물들을 만들어냈고, 마지막 발표마저도 훌륭하게 해내줘서 뿌듯함이 느껴졌다. 6개월간 5층 강의실에서는 기쁨, 감동, 좌절 등 수많은 감정들을 3기 수강생들과 함께 나누었다. 매일 8시간 이상씩 6개월간 함께 지내며 같이 공부하고 쉬는시간엔 웃고 떠들고 같이 점심을 먹었다. 프로젝트를 수행해 내면서 모르는게 있으면 서로 물어보고 어려운 이슈를 해냈을때 다 같이 박수를 치며 기뻐했다. 수강생 한 명 한 명이 순수하고 착했고, 그렇지 않은 나도 그들과 함께 있으니 순수한 감정을 느낄수 있었다. 이런 만남이 언제 또 있었을까 싶었을만큼 ..

4달의 부트캠프 강의 후기

11월 14일에 첫 강의 OT와 함께 강의가 시작되었고, 3월 13일 데브옵스 프로젝트를 끝으로 "한화시스템 beyond sw camp" 의 기본 교육커리큘럼은 끝이 났다. 3월14일부터 5월9일까지는 이제 여태 배운 지식을 총동원한 최종프로젝트가 진행된다. 4달간 강의회고 일단, 4달간 부족한 강의를 열심히 들어주고, 항상 수업에 적극적으로 참여해준 수강생들에게 큰 감사를 드리고 싶다. 마지막 강의였던, jenkins 마무리 시간에 뭐 수상소감 또는 작별인사 마냥 되는것이 어색해서, 다들 고생했다고 제대로 말도 못 전하고 어정쩡하게 강의가 마무리가 돼서 이 글을 빌어 다시 한번 감사를 전한다. 묵묵히 강의내용을 복습하고 열심히 공부해주는 모습. 수업시간의 실습내용을 열심히 캡쳐를 떠서 자료정리를 해주시..

devops와 k8s(쿠버네티스) 강의 후기

github action을 활용한 기초적인 jar파일 자동 배포부터 devops수업이 시작되었다. 그 과정에서 aws의 기본적인 서비스인 ec2, rds, vpc와 보안그룹, 로드밸런서, iam 등을 활용해보았다. docker를 배우면서 dockerhub에 이미지를 배포했고, ec2에 jar 배포가 아닌 이미지를 통한 컨테이너 배포도 진행하였다. 금주에는 주로 컨테이너 오케스트레이션 서비스인 쿠버네티스에 대해 학습했고, aws의 k8s서비스인 eks를 활용하여 배포실습을 진행하였다. k8s는 크게는 클러스터 단위로 자원이 구분다. 클러스터내에 마스터노드를 만들고, 워커노드를 추가하여 클러스터를 구성하게 된다. eks를 사용하게 되면 마스터노드를 별도로 구성할 필요 없이 주요 요소들이 클러스터 생성과 동시..

한화시스템 부트캠프 3기 - 16주차 후기

어느덧 강의를 시작한지 16주가 돼가고 강의는 1주 남짓 남았다. 금요일 저녁 운동을 끝내고 음악을 들으면서 걸어 가는데, 정말 오랜만에 느껴보는 안도감과 편안함이 느껴졌다. 지난 16주간 나를 항상 불안했던 것은 나의 부족함으로 내가 맡은 많은 수강생들이 개발자로서 갖춰야 할것을 갖추지 못하게 될까 하는 것이었다. 그러나, 저번주 프로젝트를 거치고 강의가 끝나가는 16주차를 지나쳐가니 이제는 안심이 되는것 같다. 이제는 수강생들이 앞으로 다가올 모든 일들을 잘 해내갈것 같다는 생각이 든다. 저번주 프로젝트에서 어려움을 겪고 속상해 했던 수강생들이 어느덧 훌훌 털고 다시금 공부에 집중하는 모습과 지난 프로젝트에서 부족했던 모습을 발판삼아 성장하려 하는 모습에서 대견함을 느꼈다. 또한 수업시간에 막히는 부..

미니 백엔드&프론트 프로젝트 후기

한화시스템 sw 부트캠프 15주차에는 여태껏 배운 백엔드, 프론트 기술을 가지고 5일간의 미니 프로젝트를 진행했다. 5일이긴 하나, 수강생들이 자발적으로 최소 1,2주전부터 프로젝트를 수업과 병행하며 진행했던것으로 알고 있다. 사실, 그렇게 하지 않으면 5일만에 기획, DB설계, 백엔드 개발, 프론트엔드 개발이라고 하는 하나의 완성된 서비스를 만들어내는게 쉽지 않은것은 사실이다. 서비스의 규모를 축소하고 인증같은 부가적인 서비스를 아에 붙이지 않은채 기본적인 CRUD만 만들었다면 가능할지 모르겠으나, 수강생들의 첫 프로젝트에 대한 열의는 높았다. 제한된 시간속에 프로젝트가 진행되다 보니, 다들 잠을 줄여가며 개발에 몰두했고, 5일간 수강생들의 모습은 피폐함 그자체였다. 그리고 그 피폐함은 훌륭한 결과물들..

spring cloud msa 강의 후기

실무에 가보면 대규모 시스템 뿐만 아니라, 작은 스타트업에서도 msa 로 시스템을 개발하고 운영하고 있는 경우가 생각보다 많다. msa의 장단점은 명확하지만, 모든 IT회사의 꿈은 서비스가 확장되고 트래픽이 증가하여 서버에 부하가 발생하는 것이기에 서비스를 이제 막 시작하는 회사의 개발자들의 꿈이 회사의 시스템에 반영되는것 같다. 물론 트래픽이 생각만큼 나오지 않는다면 이 설계가 불필요한 오버엔지니어링이 되는 경우도 허다하다. 지난주 강의 내용 지난주에는 msa아키텍처 설계를 위한 도구로서 spring cloud의 몇가지 서비스들을 다루어보았다. spring cloud gateway와 eureka서비스를 중심으로 order_system을 item, member, ordering 3개로 쪼개어 각기 다른 ..

vue.js 프레임워크 강의 후기

총 6개월의 교육기간 중에 3개월 가량이 지났다. 겨울도 어느덧 끝나가는듯한 느낌이들고, 이제 봄이 오고 남은 3개월도 금방 지나가겠지? 인생이 80년쯤된다 치면, 6개월이라는 시간은 전체 인생의 1/160 정도 되는 시간일것이고 이미 인생의 절반 조금 안되게 살아온 내게는 6개월이 남은 시간의 1/80 정도 되는 시간이라고 생각된다. 80장의 카드 중에 1장을 너무 쉽게 써버리면 안될것 같다. 새삼 내게 주어진 시간의 유한함을 잊지말고, 살아가야겠다는 생각이든다. 지난주 강의 내용 vue.js 프레임워크에 대한 강의를 진행했다. node를 설치해서 npm 명령어를 이용하여 vue프로젝트를 생성했고, order_system api에 맞는 화면을 하나씩 만들어갔다. 라우터를 활용했고, 컴포넌트를 사용해서 ..

spring 강의 마무리

한주간 강의 내용 위 사진은 이번주 한주간 강의 했던 내용 중에 가장 중요한 2가지 내용이 아니었나 싶다. 먼저, aop와 controlleradvice등 미들웨어성 기술을 활용해서 공통 로깅과 예외처리 작업을 수행했다. 실무코드에 반드시 있는 기술들이니 반드시 복습하고 추후 활용하길 바란다. 이번주는 로그인 기술에 대한 실습과 이론내용을 수업의 주를 이루었던것 같다. 로그인방법에는 크게 세션방식과 토큰방식이 있다. 세션은 서버에서 사용자의 세션ID를 관리하고 세션저장소에 사용자 정보를 저장해두고 인증을 처리하는 방식이다. 토큰은 서버에서 사용자의 로그인상태를 관리하지 않고, 토큰의 signature를 통해 사용자의 토큰을 매API요청마다 검사하는 방식으로 인증여부를 확인한다. 토큰방식의 stateles..

spring 게시판 강의

이번주 강의 내용 author와 post 엔티티를 가진 게시판 서비스를 두고 본격적으로 springboot와 jpa강의가 시작되었다. 두 엔티티간의 연계를 위해 OneToMany, ManyToOne 어노테이션과 관련된 주요 옵션에 대해 강조했다. 연관관계의 주인이 누구인지, 지연로딩과 즉시로딩은 무엇인지, 그리고 N+1문제는 왜 발생하고 어떻게 해결해야 하는지에 대해 실습코드를 통해 확인해 보았다. OneToMany, ManyToOne, OneToOne 등 습관적으로 코드를 짜는 것은 어렵지 않을것이나, 이론적인 백그라운드가 있어야 면접에서 주요 이슈사항에 대해 대답할 수 있을것이므로 코드와 이론을 번갈아가면서 잘 정리하길 바란다. 테스트코드 작성을 통해 어떤 목적을 가지고 테스트코드를 작성하는지, 각 ..

Spring 기본 강의

이번주 강의 내용 이번주에는 스프링 기본강의를 진행했다. 주로 Controller에서의 http통신을 위해 값을 주고받는 패턴과 Repository 레이어에서의 기술들에 대해 학습했다. Repository는 JDBC, mybatis, jpa ,spring data jpa에 대해 배웠고, spring data jpa를 위주로 향후 수업이 진행될 예정이라 더 강조해서 진행했다. 나머지 기술도 추후 본인이 어떤 회사에서 어떤 기술을 사용하게 될지 알수 없으니, 한번쯤은 복습해두길 바란다. 해당 기술을 통해 orm기술인 spring data jpa가 어떤 측면에서 편의가 향상됐는지도 이해할수 있을것이다. jpa는 아직 본격적인 DB관계성이 나오질 않아 Entity를 통해 DB를 생성하는 기본적인 방법과 내장된 ..