정말 오랜만에 글을 작성하는 것 같다.
마지막 포스팅 시점으로부터 정말 많은 일을 했기에 글을 쓸 짬이 안났던 것 같다.. 라고 하기엔 그냥 나의 게으름인 것 같다.
결론부터 얘기하자면 작년 이맘때쯤의 나와 비교했을 때 정말 많은 성장이 있었던 한해였던 것 같다.
Github
올해부터 본격적으로 깃허브를 시작했다. 6월부터 시작해서 6개월을 날린듯한 감이 있지만 이제는 깃허브 없으면 프로젝트 못할 것 같다는 생각이 들 정도로 깃 사용에 익숙해지려고 노력했다.
잔디를 보면 11월과 12월을 정말 바쁘게 보냈다는 것을 알 수 있는데, 이때 연구실 프로젝트와 대회 프로젝트까지 일정 내에 완료해야 했기 때문에 정말 노트북을 잡고 살았던 것 같다.
Github stat은 B-로 마무리 될 것 같다.
무슨 기준으로 stat이 측정되는지는 알아보지 않아서 잘 모르겠지만, 내년에는 적어도 B-보다는 더 높아야 하겠다는 목표가 생겼다.
Project
2학기에는 총 4개의 프로젝트를 진행하였는데, 2개의 프로젝트에 시간을 많이 들였다. 첫 번째는 연구실의 영상데이터 Shamir Secret Sharing WebUI개발이고 두 번째는 대회 작품으로 진행한 분실물 찾기 플랫폼 Finding이다.
연구실 프로젝트는 React로 진행하였고, 나는 작년에 진행한 연구과제에 이어서 참여하였기 때문에 우선적으로 작년 과제 내용을 React Web으로 구현한 후, 올해 진행 내용인 Shamir Secret Sharing Web을 개발하였다.
WebUI에서 share의 개수, 임계치(Threshold), 비밀값을 입력한 후 Express로 구현한 api 서버에 share 생성 요청을 하면 api 서버에서 share를 생성하고, 임계치의 share를 받으면 share로 비밀값을 얻는다.
연구과제 관련해서 논문도 작성했다.
원래는 C++로 구현된 영상처리 서버와 통신을 하여야 한다. 때문에 방학에는 이 부분을 수행할 것 같다.
두 번째 프로젝트는 대회 출품 작품으로 분실물 찾기 플랫폼 어플을 개발했다.
프레임워크는 React Native와 Expo를 사용했다.
어플의 주 기능은 게시판, 회원가입, 채팅, 분실물 검색 기능이었고 내가 맡은 개발 파트는 채팅 기능과 경찰청 api를 통한 분실물 검색 기능 구현이었다.
프로젝트의 주 데이터베이스로는 Firebase가 채택되었는데, 따로 DB 서버를 사용하는 것이 제한된 상황이어서 언제 어디서든 인터넷만 연결되어 있다면 데이터를 받아올 수 있는 Realtime DB가 필요했음이 그 이유이다.
어플의 구성도와 시연 화면이다.
내가 디자인쪽에 정말 문외한인 편인데 팀원 한분이 디자인과 주요 기능에 고생을 정말 많이 해주셔서 어플다운 결과물이 나온 것 같다.
대회 결과는 동상으로 마무리되었다. 다들 고생한 것에 비하면 정말 만족스럽지 못한 결과였지만 이번 프로젝트를 통해 배운 점도 많고, 프로젝트가 좋은 경험이 되었기 때문에 결과에 연연하지 않기로 했다.
React Native가 처음인 팀원들이 대다수였는데 다들 프로젝트 마무리까지 한명도 손놓지 않아줘서 팀장으로써 매우 고마웠다.
앞으로의 계획
이제 학부 4학년이고 취업도 해야하기 때문에 작년보다 더 열심히 살려고 계획중이다.
방학이 되었으니 우선적으로 백준을 다시 시작하려 한다.
여름방학에 일주일간 백준만 해서 실버 5를 달성했었는데, 학기중에는 백준에 시간투자를 많이 하지 못해서 현재 실버 4티어이다. 학기중에 적어도 실버 3은 달성하고 싶었는데 계획을 달성하지 못해서 아쉬웠다.
스트릭이 정말 절망적인 것을 확인할 수 있다..
때문에 방학에는 미친듯이 해서 못해도 골드 3 이상은 달성하려고 목표를 설정했다.
원래는 공부를 항상 독학과 삽질로 했었는데 강의를 듣고 안듣고의 차이가 엄청나게 크다는 친구의 조언을 받아서 이제부터는 인프런에서 강의를 사서 들으려고 한다.
사려는 강의는 총 3개로 첫 번째는 큰돌님의 c++ 알고리즘 강의, 두 번째는 타입스크립트, 세 번째는 도커 관련 강의를 들어보려고 한다.
10~11월에 요즘 웹개발자 채용 현황이 어떤지 확인하려고 채용 사이트를 둘러본 적이 있었는데 이제는 React 뿐 아니라 Typescript도 실무에서 많이 사용하는 것 같다.
교수님과 프론트엔드로 현재 재직중이신 선배님도 Typescript를 공부해야 한다고 하셨기 때문에 방학동안에 Typescript 기초는 모두 공부해서 적어도 구글에 예제를 검색했을 때 코드를 읽을 수 있는 정도의 수준까지는 익히려고 한다.
도커는 요즘 들어 많이 사용되는 추세가 있고, 나의 목표는 최종적으로 풀스택이기 때문에 알아둬서 나쁠게 없다는 생각이 있어서 우선 강의 구매는 해두려고 한다.
마무리
2024년에는 도전해보고 싶은 것들이 많다. 내가 도전하려는 것들은 우선적으로 실력이 뒷받침되어야 하기 때문에, 특히 일단 코딩테스트는 통과해야 하기 때문에 코딩테스트를 열심히 준비할 것 같다.
마음같아서는 하루아침에 잘해지고 싶지만 그런건 불가능하기 때문에 꾸준히 경험치를 쌓으려고 한다.