본문 바로가기

카테고리 없음

4년차 회고록

너무 늦게 회고록을 쓴게 아닌가.. 하지만 내 성장을 기록하기 위해 작성을 해보았다.

 

2번째 직장 퇴사히기까지 한일

 

새해가 지나자 마이데이터, 신규 결제시스템 한꺼번에 오픈을 하여, 정신없이 시간이 흘렀다.

이제 SI 에서 SM 으로 운영에 집중할때가 되었었다.

 

이커머스쪽 결제 시스템 말고도 다른 곳에서도 우리 결제시스템을 원하는 곳이 있어서 가맹점에게 어떻게 하면 더 쉽게 연동을 할 수 있게 해줄까 고민이 많았다.

 

 

그래서 가맹점 연동을 위해 위와 같은 페이지를 만들어 연동 배포를 하니 너무 만족하는 표정들이 보여 그동안 고생헀던 것들이 사라져갔다.

 

두번째로는 해외 결제 시스템(Apple pay)을 카드사와 연동 시키는 일을 하였다.

지금은 흔히 알고 있는 애플페이이지만 처음에는 크림페이로 사용했다.

 

정말 소수만 아는 인원들로 시작을 했고, 담당자님도 개발 지식에 대해 깊게 아는 사람이 없어, 요청이 들어 오게되었다.

 

 

Apple 쪽으로 현대카드의 토큰을 넘기는 일을 해야 하는 일이였는데 처음에는 간단해보여서 1주일이면 끝날것같았다.

하지만, 인증서를 교환하여서 Apple ROOT 인지 확인후, Apple 개발자 센터에서 인증받은 도메인이여야 하는 작업들을 API 전송시 이루어져야 하는 일이여서 쉬운 일은 아니였다.

또한, 비밀리로 진행되는 일인데 어떻게 다른곳에 유출이 되어서 좀 깜짝 놀랐었었다.

 

 

 

그렇게 일을 마무리 하고 결국 이번에도 퇴사를 하게되었다.

 

 

퇴사를 한 계기는 어른들의 사정으로 계약이 엎어지면서 같이 일하던 동료들과 떨어진다는 것 자체가 마음에 들지 않았다.

두번째로는 성장이 막혀진다는 느낌이 나왔다. SI라고 해서 최신기술을 사용한다고 하지만 SI업계에서 최신기술이였지 서비스업계에서는 퇴물이 된 기술들을 솔루션이라는 외부업체의 힘을 이용해서 잠재된 에러를 계속 가져간다는 것 자체가 마음에 들지 않았다.

혼자 프로젝트로 버전업이나 ORM도입도 하였지만 혼자 공부하는건 언제나 한계가 있어 마침 부트캠프도 다니고 있어 쉬다가 재취업하는 시기를 노렸다.

 

공부..공...부..공.........부

 

이번년도는 진짜 공부만 했었었다.

 

1. 멋쟁이 사자처럼을 다니는 일이 있었다.

 

 

모든 일들이 코드리뷰로 이루어져 팀원들끼리 얘기를 나누고 최선의 결과를 도출해낸다는것 자체가 너무 즐거웠다.

나와 비슷한 사람들의 생각과 멘토님의 생각들까지 읽을 수 있어 좋았었다.

끝나고 나서 우수수강생으로 뽑여 몇몇 기업 면접 기회를 얻었고, 합격한 곳도 있었는데 원하던 일이 아니여서 포기를 했다.

 

두번째는 제로베이스라는 부트캠프이다.

 

 

팀프로젝트도 하고, 개인프로젝트도 진행했다.

여기는 슬랙으로 모든게 이루어 지는데, 회사를 다니면서 병행을 한거라서 열심히 하지 않아 우수 수강생이라고 말하기는 많이 부끄러웠다.

 

 

 

 

 

 

세번째로는 nextstep 교육에 참여한것이다.

부트캠프 다녀본 사람은 알겠지만, 멘토님들에게 질문하는것 자체가 엄청난 혜택이다. 근데 처음에는 Java 기초나 Spring 기초에 관련해서는 알고 있는 내용이라 다른 것에 대해 알고 싶어, nextstep 강의에 많이 지원하였다.

오브젝트의 조영호님, DDD start! 의 최범균님, 핵클의 조영우님, 쿠팡출신의 장진달님등 너무 좋은 강의를 듣게 되어, 영광이였습니다.

 

 

 

또한, kotlin 강의 들으면서 멘토님께서 인프런에 다니시는 분이였는데, node.js는 처음에는 관심이 그렇게 크게 있지는 않았는데 인프런 밋업에서 발표자로 한다고 하여서 참여하게 되었고 마지막에 인사드리는 일까지 있었다. 세상이 엄청 좁다고 느끼는 계기가 많이 되었었다.

 

https://www.inflearn.com/pages/inflearn-evening-meetup-2211

 

 

3번째 직장까지

 

3번째 직장으로 이동하게 되었는데 그렇게 큰 어려움은 없었다.

처음에는 SI/SM만 아니면, 이직은 오케이였다. 네카라쿠배라고 불리는 기업은 물론이고, 스타트업까지 모두 지원을 하였고 신입과는 다르게 학력은 많이 보지 않는것같아서, 면접을 많이 보게 되었다.

여의도, 성수, 강남, 판교 여러군데 면접보러 다니면서 원래 계획은 천천히 이직자리를 갈려고 했다.

큰 기업 같은 경우는 서류에서 면접까지 시간이 꽤 걸리는 단점이 있었는데, 여자친구가 병원에 입원하는 일이 있었는데, 돈이 필요한 시기가 갑자기 찾아와 그 시기에 합격이 되었던 기업들중에 하나 급하게 출근하게 되었다.

 

다음 이직한 곳은 결제를 중점으로한 핀테크 회사였다.

이직한곳은 비교적 어린사람들이 많았으며, 소스코드나 배포관련해서는 미숙한 부분이 많았다.

 

한달정도는 회사에 적응하는 기간이였고, 한달부터 문제가 발생하였다.

기존 회사 백오피스에서는 두명이상이 데이터를 저장하는 일이 생기면 관련 DB 서버가 데드락 때문에 멈추는 일에 봉착했다.

 

 

결론 부터 말하자면, 트랜잭션을 잘못 사용하여 계속 점유하고싶어 에러가 발생한것이였다.

해결하라고 담당자님께서 찾아왔는데, 뭘 해결해야하는지 로직이 어떻게 되고 있는지 알 수가없어 너무 힘들었다.

처음에는 커넥션풀 설정에러인줄 알고, 인프라 팀장님과 상의를 계속 했었다.

 

https://d2.naver.com/helloworld/5102792

 

여기 사이트 보면서 최적의 갯수를 잡고 하였다.

테스트는 nGrinder를 사용하여, 테스트를 해봤다.

 

 

 

https://github.com/naver/ngrinder/releases

 

 

 

 

 

위에 시나리오처럼 테스트를 진행하였고, 커넥션풀을 설정하여도 에러가 발생을 하였고, 스프링에서 지원하는 트랙잭션 기본 설정값을 사용하니, 거짓말처럼 데드락되는 문제점이 없어졌다.

 

백오피스 문제는 해결 하되, 문제가 지속적으로 발생하여, 모니터링 시스템을 적용시켰다.

 

 

 

 

 

적용하는 서비스가, TCP 서비스여서 스프링이나 서블릿을 하는 프로젝트가 아니여서, 핀포인트를 설정해도 확인을 할 수 없었다.

그래서, pinpoint profiler.entrypoint 를 필요한 메소드를 직접 입력해줘 확인이 가능하여, 현재는 netty + spring 으로 수정헀지만, 이때는 비상대책으로 설정하였다.

 

 

 

 

 

이 이후, Stop-the-world 이슈, 호스팅 서버에러가 발생하여 서비스가 중지되었던 점, nexus 서버 이슈 등 해결하면서 기초적인 문제들을 해결하면서 대기업들에서 배우지 못한 이슈들을 해결해야하는것이 느끼는점이 많아 성장을 느끼고 있다.