메가테라 포트폴리오 2주차 주간회고

샨티(shanti)·2022년 10월 31일
0

개발자가 되기 위해 공부하며, 혹등고래 성장일기를 쓰는 샨티입니다.
지극히 주관적이고 개인적인 이야기가 가득합니다. 😅

모두가 다 그렇게 느끼겠지만 시간이 참 빠르다.
풀스택 강의를 듣고 레벨테스트도 하고. 성수 코딩도장에 자리가 생겼구나! 하고 다같이 모여 신기해하던게 생생한데 포트폴리오 3주차를 맞이했다.
가을이 되고 또 연말이라는 점도 한 몫 하는듯? ㅎㅎ

이제 스프린트 회의가 매주 월요일에 있기 때문에 주간회고를 월요일에 작성하게 되는데 그러다보니 2주차 주간회고를 쓰고 있음에도 불구하고 3주차를 보내고 있는 터라 뭔가 마음이 여유로운 상황은 아니다. (아 물론 포트폴리오 기간은 절대 여유로울 수 없다.ㅎㅎㅎㅎ 그냥 마음상태를 이야기하는 것일 뿐)

이번주(엄밀히 말하면 지난주)에 수행하려고 했던 사항, 즉 세워둔 목표를 정리하면 아래와 같다.

(1) 카카오맵 API를 활용하여 지도를 화면에 띄운다.
(2) 임의의 장소 정보를 가져와 지도 위에 마커를 띄워준다.
(3) 마커를 클릭하면 장소 요약정보를 팝업으로 띄워준다.

주요 내용은 위 3가지였다. 물론 부수적인 내용들도 포함되어 있는데 결론적으론 마커 클릭 시 선택된 마커의 이미지를 변경해주는 부분은 구현을 하지 못했고 나머지 task들은 (프론트에 한정지어) 모두 구현했다.

매일 매일이 마음 조이는 시간이었지만 그래도 동료들 앞에서 이번주에 내가 구현한 기능을 설명하고 발표할 시간이 주어져서 다행이고 또 좋았다.
못할까봐 조마조마 했는데 ㅎㅎ 어쨌든 작동하는 상태로 발표할 수 있어서 좋았고 삽질(?)할 수 있는 한계 기한(우리의 경우에는 7일, 일반적인 스크럼에서는 30일)이 있어서 언제든 다시 제자리로, 방향성을 조정하고 다시 되돌릴 수 있다는 점이 buffer로 느껴져서 조금은 안심이 되었다.

이번주 삽질의 결과물.

이번 스프린트를 되돌아보며 아래 2가지를 회고하려 한다.

회고 1. 외부 라이브러리, API 사용하기

지도를 만만하게 본 건 절대 아니다. 노아님도 지도는 어렵다고 하셨고 나도 처음 해보는 것이기에 마음의 벽이 높았다.
하지만 실제로 API를 갖다 쓰는 것이 정말 쉽지 않다는 것을 만들면서 더욱 느꼈던 것 같다.

실무에서도 마찬가지고, 굳이 실무까지 가지 않더라도 포트폴리오를 만들때만 하더라도 외부 라이브러리나 API를 사용할 일이 심심찮게 발생한다. 그리고 끊임없이 발생할 것이다.
상황이 반복될 것이 명확하다면 어떻게 할 것인가?

막말로, 강의에서 나온 라이브러리가 아닌 '필요한' 것을 스스로 찾아내서 사용해야 한다면? 그리고 그럴 일이 너무나 농후하게 잦다면?

이번에 API를 이해하고 사용하는 '패턴'을 만들어내기 까지 시간을 꽤 많이 투입했다. 지금까진 찍먹이고 아마 이번주에 해야 할 '클러스터링'이 찐일 것 같은데..
그럼 어떻게 해야할까.

어쨌든 이번 한 주를 보내면서 내린 결론은 결국 이해하는 데 필요한 시간은 충분히 투입해야 한다는 것이다.

카카오맵의 경우 react에 딱 들어맞는 예시 코드를 제공하지 않기에 여러 블로그를 찾아 돌아다녀서 1차로 구현을 하고, 그 상태에서 노아님의 도움을 받는 방향으로 갔다.

피드백을 받고 대수술에 가까운 구조 변경이 있었지만 결론적으론 훨씬 깔끔하고, 무엇보다도 '테스트 코드'가 만들어졌다는 부분이 아주 아주 의미있다.

어제 근 1시간이 넘도록 노아님이 카카오맵 관련 코드를 테스트하기 위해 자료를 찾고 결국 추상화 작업으로 테스트가 가능한 상태를 만들어낸 것을 옆에서 보면서... 우선 대단하다고 느낀것도 그렇지만 외부 API라고 하더라도 테스트가 가능한 상태로 추상화 작업을 하고 이외의 것들을 충분히 테스트 할 수 있는 구조를 만들어 내는 것이 중요하다는 점을 다시 깨달았다.

실무에 가면 정말 테스트 하나 하나 짜는 것 역시 본인의 몫이 될 것이기에 결국 좋은 구조를 계속 떠올리야겠다고 생각했다.

그 의미로 오늘 약식 데모데이 때까지 테스트를 짜고 통과시키는 상태를 만들어두었다.
코드를 열어보면 정말 좋은 코드일까? 라는 생각이 들긴 하지만... 그래도 노아님이 베이스로 잡아주신 가이드를 따라가며 테스트를 어느정도 진행했다.

다음주에는 백과 프론트 양쪽을 모두 구현해야 하기에 테스트도 복잡해질 것이고 시간은 더... 많이..(;;) 들겠지만. 외부의 것을 가져다가 사용한다 하더라도 테스트는 놓치지 않고 가야한다는 점 계속 상기해야 겠다.

회고 2. CSS력(?) 높이기

오늘 약식 데모데이를 하면서 느꼈던 점이자, 3기 동료분께 도움을 요청하면서 느꼈던 부분이다.
CSS력을 평소에 야곰 야곰 높여야겠다는 생각이 절실히 들었다.

딱 들어맞는 정답이 없는 영역 중에서도 지이인-짜 정답이 없어보인다고 생각되는 영역이 바로 CSS다.
물론 최선의 선택이야 있겠지만 아마 10명을 데려다 놓으면 10명 모두 CSS를 적용하는 방식이 다를 것 같다.

task를 다듬고 스프린트 포인트를 잡으면서 CSS에 투입하는 시간은 최소한으로 줄이고 있긴 하다. (기능을 모두 구현한 뒤에 전체적으로 잡을 생각이긴 하다만... 그래도 볼 맛은 있어야 할 것 같아 최소한의 CSS만 적용하는 중..)

근데 CSS는 매번 새롭고 매번 다르게 적용하고 또 제대로 알고 적용하는 느낌은 아니라서 막판에 스트레스를 많이 받는다. 엉뚱한 데에서 사고를 치는 느낌이랄까...(아무리 height를 건드려도 컨텐츠가 바닥까지 꽉 차버리는 뭐 그런 류의 사고...)

평소에 좀 좋은 형태의 정형화된 CSS를 외워두면 적어도 티피컬한 상태는 대응할 수 있을 것 같은데.

오늘 도움을 받았던 부분 중에서도 transform의 활용법을 숙지하지 못해서 발생한 점이 있다.
간단하게 구현할 수 있는 부분을 하루 반나절을 썼으니.. 어휴!!!

오늘 동료분 통해 작동원리를 간략히 알게된 transform, 그리고 relative-absolute의 관계 등.
평소에 CSS력을 높이기 위해 컴포넌트를 구현할 때 적어도 layout은 잡으면서 연습을 이어나가자.


이제 시작하는 주는 두 번째 스프린트!
지도 기능을 모두 구현해야 한다는 목표로 이미 있는 태스크들의 스토리포인트를 산정하니 120이 넘는 .. 이건 뭐다..?ㅎㅎㅎㅎ

그래도 빠르게 구현할 것들에 대해서는 우선순위를 두고 외부 API를 적극 활용하자.

그리고 강의에 나왔던 순서대로 먼저 계획을 잡고 -> 태스크에 대한 세부 설계를 진행하고 -> 테스트를 만들고 -> 그에 따른 코드를 작성하는 방향. 꼭 지키도록 하자.

profile
가벼운 사진, 그렇지 못한 글

0개의 댓글