원티드 7

[위코드 X 원티드 ] 프리온보딩 백엔드 - 카닥 기업과제 후기

나혼자.. 한다 이번 과제는 개인과제로, 나 혼자 개발했다. 팀원과 함께 고민하며 소통하며 개발하던게 정말 재밌었는데, 너무 아쉬웠다. 그렇다고 대충한건 아니다! 나 스스로 생각하고, 내 스스로 기능을 판단하여 구현하였다. 데이터베이스 설계부터 배포 까지.. 이제 개발하면서 느낀점, 고민들 혹은 해결법 등의 회고를 적어보겠다. 개발 고민 요구사항이 정확하지 않는데 나 스스로 판단하는 건가? 내가 볼땐, 요구사항이 분명치 않은 부분이 몇개 있었다. 타이어 저장은 인증 처리가 필요한데, 다른 유저의 타이어도 저장할 수 있다?? 이 부분이 너무 헷갈렸다. 아니면 직원임을 인증해서 사용자의 타이어 정보를 저장하는건가? 라는 생각도 하였다. 생각해보니, '모두 사용자일 거라는 것은 착각이다'라는 생..

액티비티 2021.11.29

[위코드 X 원티드] 프리온보딩 백엔드 - 여섯 번째 기업과제 후기

마지막 팀과제 이번 과제는 마지막 팀과제로 좋은 팀과 협업할 수 있는 마지막 기회였다.(이 프로그램 내에선 그렇다!) 이번 기업은 디어코퍼레이션으로 전동 킥보드관련 회사이다. 이번 과제는 어려운 점이 몇가지 있다. 변경에 유연한 설계 공간데이터타입 위 두가지 핵심 문제를 팀과 고민하여 해결하는 것이 중요하였다. 어떻게 해결하였는지, 그리고 또 팀과 협업할 때 어떤걸 느꼈는지 하나하나 써보겠습니다!! 문제에 대한 접근법 우리는 변경에 유연한 설계에 대한 해결을 어떻게 할지 고민하였다. 처음에 든 생각으론 기존에 아는 정보에서 확장하는 수밖에 없었다. 객체지향프로그래밍 OOP에 나는 전부터 관심이 있었고, 객체지향의 사실과 오해, 일명 토끼책이라고 불리는 책을 두번 정독한 경험이 있다. 그래서 나는 얼핏 어..

액티비티 2021.11.23

[위코드 X 원티드] 프리온보딩 백엔드 - 다섯 번째 기업과제 후기

절반 이상을 해냈다. 벌써 다섯 번째 기업과제이다. 이번 과제는 '휴먼스케이프'라는 회사의 기업과제이다. 힘들기도 했고, 재밌기도 했던 프로그램을 벌써 절반을 해냈다는 것이 아쉽기도하고, 개운하기도 한 이상한 기분이 든다. 너무 재밌는 프로그램이었고 나에겐, '개발자'라는 직업에 대해 확신을 준 프로그램이라 고마운 프로그램이기도 하다. 어찌됐던, 이번 과제를 해나가며 생겼던 고민들, 느낌들을 적고자 한다. 재밌게 읽어주십셔! 스무스한 시작 우리도 어느덧 네개의 기업과제를 이미 한 경험이 있기에, 순조롭게 어떤식으로 개발할지, 어떤 스택을 사용할지, 컨벤션을 어떻게 할지, 기능 분할을 어떻게 할지에 대해 얘기했다. 저번에는 기능에 대한 역할 분배가 적절치 않았지만 이번에는 일단..

액티비티 2021.11.17

[위코드 X 원티드] 프리온보딩 백엔드 - 네 번째 기업과제 후기

8퍼센트 기업과제 입금, 출금, 거래내역 조회 api를 만드는 기업과제였다. 과제를 보자마자 다른 api만드는 것 보단 더 안정성에 힘써야 했다 생각했다. 이를테면 거래내역과 계좌의 잔액이 다른 데이터 정합성 문제가 일어나면 정말 큰 문제라 생각했다. 즉, '입금을 한다'의 하나의 요청에 대해 계좌의 잔액 변경 입금 거래내역 생성 두개의 각각의 결과가 DB내에 동일하게 존재 하여야한다. 그렇기 위해선 트랜잭션을 생각할 수밖에 없었다. 트랜잭션은 트랜잭션 내 하나의 쿼리가 오류가 나면 모두다 롤백시킨다. 즉, 원자성의 특징을 띈다. 그런데 더 나아가 우린 '동시성'에 대해서도 깊게 고민했다. 찾아보니 트랜잭션에 고립레벨을 줄 수가 있는 걸 알게 되었다. DBMS마다 기본적으로 ..

액티비티 2021.11.14

[위코드 x 원티드] 프리온보딩 백엔드 - 세번 째 기업과제 후기

과제 선정 우리 팀은 자바스크립트에 익숙한 팀이다. 프레임워크도 당연히 express와 nestJS에 익숙하다. 그런데 이번엔 우린 엄청 큰 도전을 해보았다. 파이썬과, flask 프레임워크를 이용해보기로!!!! 검색어 자동완성 기능을 해보고 싶었기 때문이다. 유튜브나 구글을 보면 'ㅁ'하나만 쳐도 마음, 마술, 매직, 마음의 소리 등등 매우 많은 자동완성 기능이 된다. 이러한 기능을 실제로 해볼 좋은 기회라 생각하였기에 도전해보기로 결정하였다.!! 다사 다난한 과정 일단 파이썬 환경에 대해서도 잘모르기에 환경 세팅하는것부터 애를 먹었다. 무슨 '가상 환경'?을 먼저 세팅하고 하는게 너무 익숙치 않았다. 그런데 기본적인 플라스크 프레임워크의 로직은 nestJs라던지, 스프링과..

액티비티 2021.11.10

[위코드 X 원티드] 프리온보딩 두번째 과제 후기

첫 과제 리뷰 첫 과제가 끝나고 나니 리뷰들이 올라와 있었다. 정말 작성을 잘한 팀이 많았다. 삼일동안 밤새 과제를 하면서 완전 고생했는데 더 잘한 팀이 있는 것을 보고 조금 허탈한 마음이 들긴 했다. 다른 팀이 한 과제를 보고 배운점으로는 모두다 깃 커밋메시지가 일관성이 있다는 것 리드미에 요구사항, 과제 구현사항, 그리고 팀 이름을 적었다는 것 API문서화가 포스트맨을 통해 매우 깔끔하게 되어있다는 점 외부 사람이 API를 바로 테스트 해볼 수 있도록 포스트맨을 배포했다는 점 그래서 이번 두번 째 과제에 적용하여야 겠다고 생각했다. 두 번째 과제의 시작 - 마피아 컴퍼니 이번에는 5명이서 하나의 과제를 하면 된다고 한다. 두번째 과제로는 마피아 컴퍼니 프레시 코드 컴퍼니 두 기업의 과제중 하나를 고르..

액티비티 2021.11.07

[위코드 X 원티드] 프리온보딩 첫 과제 후기

[위코드 X 원티드] 프리온보딩 (백엔드) 참여 전 혼자 백엔드 공부만 하고 있던 와중 시영이형이 이러한 교육도 있다며 추천해주었다. 여러 사람과 함께 공부하고, 협업하고 싶던 욕구가 불타던 시기에 당연히 하고 싶었다. 그런데, JS, 파이썬언어를 기반으로 진행하는 프로그램이란다! 자바로 밖에 백엔드 경험을 해보지 않은 나로썬 조금 걱정이 되었지만 그냥 지원하기로 마음먹고 바로 사전과제 제출을 위한 네스트 공부를 하였다. 근데 스프링과 매우 유사해서 어렵지 않게 익혀 과제를 제출했다.(자바스크립트에 타입을 넣은 타입스크립트도 리액트 공부할 때 사용해본 경험이 있어 생각 보다 어렵지 않았다.) 그렇게 제출 완료를 했다. 사전 과제 자체는 간단했지만, 네스트에서의 단위테스트를 하는데 애를 먹었지만 단위 테스..

액티비티 2021.11.06