본문 바로가기

회고 또는 후기

프론트엔드 개발자로 살아보기 (부들부들)

갑자기 웬 프론트엔드 개발이여?

지금까지 프론트엔드 개발을 한 경험은 전무하다. 아니 전무하지 않고 한번 경험을 했다가 내 영역이 아니라는 것을 깨닫고 다시는 건들지 않으려고 하고 있었다. 근데 인턴으로 들어온 회사에서는 이번 인턴 기수부터 새로운(이상한) 제도가 생겼다고 한다. 

그렇다고 내가 서버를 하루만에 뚝딱하지도 못한다.

인턴으로 일하는 6개월 중 3개월은 백엔드 개발을 하는 팀에서, 3개월은 프론트엔드 개발을 하는 팀에서 근무한다고 한다. 

"대용량 처리 업무", "express를 사용한 api서버 개발" 등등 만 적혀있었던 인턴 공고에서는 프론트엔드 개발에 대한 이야기는 전혀 없었기에

같이 들어온 인턴 3명이서 "취업사기"라면서 불평불만했지만 어쩔 수 있나. 까라면 까야지. 

그리고 사실 인턴 입장에서는 프론트엔드던 백엔드던 상관이 없다. 많은 경험을 할수록 좋다 :) 

 

 

암튼 어느덧 백엔드 개발을 하는 팀에서 3개월간의 근무가 끝나고 프론트엔드 개발을 하게 됐다.

우리 팀에서는 Vue를 사용을 하는데 

무엇이든 열심히 하는 성격 + 예전에 경험했던 프론트엔드 프레임워크가 바로 Vue였습니다.

의 시너지는 그나마 업무에 빠르게 적응을 할 수 있게 해줬고, 기존 레거시 코드와 함께 열심히 성장 성장했다. 

 

 

그리고 한달 뒤,,,, 인턴끼리 기능 개발을 시작하는데,,,,

주어진 임무는 광고 문자열을 관리자페이지에서 관리할 수 있는 머시기 저시기 어쩌구 저쩌구.....웅앵웅

중요한 건 인턴끼리 개발을 하기 시작해서 체계가 전혀 안 잡혀 있었다는 것이다. 

심지어 기획한 기획자도 인턴이었다.

이렇게 프론트엔드의 고충을 깨닫는 시간이 찾아왔다. 

 

 

기획이 좀 모호한데...? 

기본 기획은 ppt형태의 스토리보드로 개발팀으로 넘어왔다. 

처음에 봤을 때에는 오.... 역시 회사인가. 체계적인걸? 했는데

개발을 하다 보니 모호한 부분이 너무 많다. 

 

 

예를 들어 이런 일이 있다.

1. 스토리보드에 콘텐츠를 수정하는 버튼이 없는데 내가 생각해보니 기존 컨텐츠를 수정해야할 것 같다. 상급자에게 물어보니 수정기능이 있다는 것 같다. 그럼 수정을 어떻게 하게 만들어야 되지?

2. 컨텐츠를 삭제하고 포커스는 어디로 가지? 컨텐츠를 저장을 하고 나서는 해당 콘텐츠의 페이지로 가는 게 맞나? 

 

 

아무튼 이렇게 생각하다 보면 생각 생각 생각 생각 신한카드. 

생각하다 보면 결국 내가 생각했을 때 적절한 방안으로 개발을 진행해야 되나? 근데 내 마음대로 진행했다가 다음 리뷰할 때 아니라고 하면 처음부터 다시 갈아엎어야 되는데 어떡하지? 기획자한테 물어보기에는 인턴이라서 이야기할 수 있는 메신저도 없는데 메일로 보내기에는 너무 무거운 것 같고 그렇다고 자리까지 가서 이야기하기에는 너무 멀리 있는데? 그렇다고 상급자한테 물어보기에는 너무 바빠 보이시고,,, 나는 왜 이렇게 소심하지? ㅡㅏㅏ

이렇게 생각이 많아져서 개발에 집중이 안된다.

 

 

근데 이거는 뭐 어느 순간 정신 차리고 상급자께 물어봐서 해결하니까 OK이다. 

좀 킹 받는 요소는 백엔드 개발자 하고 협업할 때 일어난다. 

500 에러 나는데요? 

백엔드 개발자하고 협업을 하면서 여러 가지 불편했던 점이 많았고 많은 중이다. 

하나씩 알아보자. 

 

  • 어떤 백엔드 개발자는 api 명세서를 개떡같이 적어주는 경우도 있을 것 같지만 지금 같이 일하는 사람은 그래도 api 명세서는 잘 적어서 준다.
  • api 명세서는 swagger로 작성이 되었는데 변경사항이 생길 때마다 dev_*** branch를 pull 받아달라고 한다.
  • swagger는 내가 pull 받아서 vscode에서 swagger viewer로 봐야 한다. 그럴 거면 swagger를 왜 쓰는가 싶다. 차라리 노션으로 만들어서 공유해줬으면 좋겠다. 
  • 명세서에 변수명 혹은 url에 오타가 있다. 해당 변수로 api가 동작이 안돼서 물어보니 오타라고 한다.
  • 개발이 끝났다고 알려준 api를 postman에서 해보니 바로 500 에러가 난다. api 테스트를 해봤냐고 물어보니 말끝을 얼버무린다.
  • api를 사용해서 잘 개발하고 있었는데 에러가 나서 물어보니 갑자기 수정사항이 생겨서 개발하고 있다고 한다. 언제 되냐고 물어보니 금방 해주겠다고 하면서 더미 데이터로 하면 안 되냐고 그런다. 그리고 3시간이 지나 api가 정상이 되었다. 
  • api를 사용해서 잘 개발하고 있었는데 어느 순간 안된다. 값을 보니 뭔가 달라졌다. 앞자리에 물어보니 "그거 수정됐는데?". 내가 Git처럼 변경사항을 추적하고 있는 줄 아나보다. 

 

이 불편한 점 중에서 가장 불편하게 느꼈던 점은 "내가 물어보기 전까지 나에게 알려주지 않는다"라는 사실이었다.

이런 문제들을 해결하기 위해서 내일은 꼭 이야기를 꺼내 소통을 해봐야겠다. 

 

나도 이런 백엔드 개발자는 아니였을까?

이렇게 프론트엔드 개발자로 일하면서 느낀 점이 참 많았다.

그리고 지금까지 프로젝트에서 기획자, 백엔드 개발자로 참여했던 과거를 돌아보게 됐다.

과연 나는 협업하기 좋은 사람이었을까? 나는 능력있는 사람이였을까? 

그리고 앞으로 협업하기 좋은 사람이 되기 위해서 어떤 점을 노력해야 할지 생각해보게 됐다.

 

  • 누가 물어보기 전에 먼저 그 사람이 필요한 정보를 꼭 공유하자. 
  • 기획은 무엇보다 자세히 작성하자. 그리고 개발자에게 모호한 점이 없는지 먼저 다가가서 물어보자.
  • API 명세서는 내가 아니라 다른 사람들이 보는 서류다. 꼼꼼하게 작성하자. 오타는 다른 사람이 봤을 때 생각보다 많이 헷갈린다. 
  • 테스트는 필수고 변경사항은 내가 먼저 전파하고 공유하자. 
  • 개발 API는 언제나 동작할 수 있도록 하게 하고, 안된다면 언제까지 고치겠다고 시간을 명시해주자.

 

프로젝트를 하면서 내가 지켰던 일들도 있고 지키지 못했던 일들도 있는 것 같다. 

더 협업하기 좋은 개발자가 되기 위해서 더더욱 노력하자.