김세원 / 프론트엔드 엔지니어
안녕하세요, 간단한 자기소개와 담당하고 계신 업무에 대해 소개해주세요!
제품 개발팀에서 프론트엔드 개발자로 일하고 있는 김세원입니다. 현재 Neuro-T와 Neuro-X 프론트 개발을 담당하고 있습니다.
뉴로클에 합류하기까지의 여정이 궁금한데요. 어떤 계기로 입사를 선택하게 되셨나요?
이전에 SSAFY(삼성 청년 소프트웨어 아카데미)라는 교육과정을 1년 동안 수강했어요. 이때 SSAFY에서 연계한 채용박람회를 통해 뉴로클의 면접기회를 얻어 합류하게 되었습니다.
SSAFY 교육과정을 듣는 많은 분들이 대기업에서 커리어를 시작하는 경우가 많은데요. 저는 개발자가 중심이 되는 IT회사를 가고 싶었고, 개발자로서 빨리 성장하고 싶은 마음이 컸기 때문에 ‘내가 가장 빨리 성장할 수 있는 곳’을 기준으로 뉴로클에 합류하는 것을 선택했습니다.
첫 사회생활이라 동료들과 소통하는 것도 서툴고 긴장됐는데, 뉴로클에서 좋은 동료분들과 1년을 함께 지내면서 개발적으로도, 인간적으로도 많이 성장하게 된 것 같아요.
마지막 문장에서 개발적으로, 인간적으로 성장하셨다는 말이 인상적이네요. 조금 더 구체적으로 듣고 싶어요.
스프린트 초반에 목표를 수립하는 과정에서 팀원들과 많은 대화를 나누게 되는데요. 그 과정에서 제가 해결하고 싶은 문제는 무엇인지, 비즈니스적으로 임팩트를 줄 수 있는 부분은 어떠한 것인지 깊게 고민하며 성장할 수 있었습니다.
예를 들면, 저는 프로젝트 구조를 파악하고 구조화해서 조금 더 효율적으로 개선하는 것을 좋아하는데요. 그래픽 관련한 부분의 최적화에 관심이 있는 분도 계셨고, 데이터 구조를 최적화하여 성능을 개선하는 것에 관심 있는 분도 계셔서 이것들을 조율하는 과정에서 제 개발 세계를 조금씩 넓혀 나갈 수 있었어요. 그리고 이 과정에서 자연스럽게 개발자로서의 나의 강점과 약점은 무엇인지, 나는 어떤 개발자가 되고 싶은지에 대해서도 생각할 수 있었습니다.
그 고민의 결과, 세원님은 어떤 개발자가 되고 싶다고 마음먹으셨나요?
최근에 『죽을 때까지 코딩하며 사는 법』이라는 책을 재미있게 읽었어요. 그 책을 읽고 죽을 때까지 코딩하는 할머니 개발자가 되고 싶다는 생각을 했습니다. (웃음) 최근 1년간 비효율적인 시스템들을 개선하는 일을 재미있게 했고, 전체적인 구조를 개선하는 과정에서 테스트 주도 개발에 관심이 생겼어요. 그래서 앞으로 더 다양한 것들을 공부하고 시도해 보면서, 할머니가 될 때까지 재미있게 코딩하고 싶습니다~!
직무 수행 시 어떤 점이 가장 중요한가요? 중점적으로 생각하거나 특별히 더 신경 쓰는 것이 무엇인지 궁금합니다.
프론트엔드 직무는 기획자, 디자이너 그리고 서버 개발자 사이에서 다리 역할을 해준다고 생각합니다. 그래서 기본적인 개발 능력 이외에도 다른 직군 사람들과 소통하는 능력이 중요한 것 같아요. 물론 기본적으로 코딩을 잘하는 것도 중요하지만, 원활한 커뮤니케이션을 통해 코딩을 하지 않고도 문제를 해결하기도 한답니다.
그리고 세세한 부분도 꼼꼼하게 살피는 것도 중요합니다. 저희 프로젝트는 3년 정도의 역사와 전통이 있다 보니 그 규모가 결코 작지 않은데요, 아무리 작은 기능이더라도 수정하다 보면 해당 코드와 얽혀있는 많은 부분에서 변화가 생길 수 있거든요. 규모가 큰 프로젝트이다 보니, 작은 부분도 세심하게 살피는 섬세함이 필요하다고 할 수 있습니다.
뉴로클에서 가장 기억에 남는 성취의 순간은 언제일까요?
제품의 언어 관리 시스템을 효율적으로 개선해냈을 때가 기억에 남습니다. 제품 다국어 지원 관리를 엑셀로 하다 보니, 여러모로 불편한 점이 있었는데요. 예를 들면 문서 관리가 다소 소홀했고, 번역이 가끔 누락되고는 했습니다. 여러모로 공수에 비해 임팩트가 부족한, 소위 말해 가성비 떨어지는 업무였습니다. 2가지 언어를 관리하는 것만으로도 벅찬데, 여기에 한국어 지원까지 추가하려니 엄두가 나지 않아서, 마음을 굳게 먹고 새로운 다국어 시스템을 도입했습니다. 새로운 시스템을 도입하고 나서 팀원들로부터 생산성이 크게 증가했다는 피드백을 받았을 때 큰 보람을 느꼈어요.
언어 시스템 외에도 코드적으로 개선할 수 있는 것들이 많이 남아있지만, 주도적으로 문제를 찾고 다 같이 열심히 개선해 나가는 조직 안에 속해 있다는 생각이 들어서 남아있는 문제들이 오히려 반갑게 느껴집니다.
개발자로서 좋은 퍼포먼스를 내기 위해서는 어떤 자질이 필요하다고 생각하시나요?
조금 더 나은 것을 만들려는 욕심이 결국엔 좋은 퍼포먼스로 이어지는 것 같다고 생각해요. ‘로딩을 조금 더 빠르게 만들어볼 순 없을까, 렌더링을 조금 더 줄여볼 순 없을까, 더 가독성 좋은 구조는 없을까’와 고민들이 최적화에 대한 열정을 불러일으키고, 더 좋은 제품을 만들어내는 것 같습니다. 이러한 고민과 고민을 해결하기 위한 행동이 제품뿐만 아니라 궁극적으로는 개발자 개개인을 성장시켜준다고 생각합니다.
현재 우리의 문제가 무엇인지 파악하는 능력과 수많은 어려움에도 흔들리지 않고 문제를 해결해 나가는 곧은 태도도 매우 중요한 것 같아요. 중요한 건 꺾이지 않는 마음이니까요
뉴로클에서 근무하면서 '입사하기 참 잘했다'라고 생각한 계기나 상황이 있나요? 가장 만족스러운 점은 무엇인가요?
변화에 유연한 조직임을 느낄 때, 회사 생활이 만족스럽습니다. 입사한 지 3주 정도 되었을 때, 프로젝트 코드를 전체적으로 둘러보고 개선하면 좋을 것 같은 항목들을 쭉 정리해서 팀원분들께 공유드린 적이 있는데요. 이제 갓 입사한 풋내기의 의견도 주의 깊게 들어주시고, 공감해 주신 결과 팀 코드 컨벤션을 정하고 린트까지 적용할 수 있었습니다. 변화에 열려 있고, 신입의 의견도 존중해주는 곳이라는 생각이 들었어요.
해당 직무로서 뉴로클에서 꼭 이루고 싶은 꿈은 무엇인가요?
프로젝트 테스트 코드를 작성해 쉽게 변경할 수 있는 코드로 만들고 싶습니다. 지금까지는 시장의 수요에 신속하게 대응하는 것에 초점을 맞추다 보니 코드의 규모가 상당히 커진 상태인데요. 그러다 보니 새로운 기능을 추가하거나 단순 유지보수를 하는 것이 점점 힘들어지고 있습니다. 혼자서만 개발할 때에는 테스트 주도 개발의 필요성을 크게 느끼지 못했는데, 결국 오래가는 서비스를 만들다 보면 꼭 배워야 하는 능력이라는 생각이 들어서 뉴로클에서 꼭 이루고 싶어요.
마지막으로, 향후에 뉴로클 지원을 고려하고 있는 지원자분들을 위한 한마디만 부탁드릴게요.
잘 알려진 서비스를 개발하는 스타트업이 아닌, B2B 서비스를 개발하는 스타트업을 첫 회사로 결정하는 것은 쉽지 않은 일인 것 같은 같은데요. 똑똑하고 오픈 마인드를 가진, 그리고 누구보다 하드 워킹하는 뉴로클 구성원 분들 덕분에 저도 1년 사이에 많이 성장한 것 같습니다.
오히려 누가 시키는 대로 일하는 환경에 있었다면 지금보다 몸은 편하지만 이만큼 성장하지 못했을 것 같다는 생각이 들어요. 구성원들에 대한 신뢰를 바탕으로 기술적으로 다양한 시도를 해볼 수 있는 유연하고 자율적인 조직이니 이런 곳에서 직접 부딪혀보면서 고속 성장하고 싶은 분들께서 많이 합류해 주셨으면 좋겠습니다~!