본문 바로가기

[직무소개] “코드를 짜는 건축가, SW Engineer 직무 파헤치기"

[직무소개] “코드를 짜는 건축가, SW Engineer 직무 파헤치기" 

안녕하세요, SK(주) C&C 취재기자 김태현입니다.

최근, IT 산업은 그 어느 때보다 빠르게 변화하고 있습니다. 이러한 변화 속에서 소프트웨어 엔지니어의 역할은 점점 더 중요해지고 있는데요. 소프트웨어 엔지니어는 단순히 코드를 작성하는 개발자의 역할을 넘어, 마치 건축가처럼 설계부터 유지 보수까지 시스템 전반을 책임지는 중요한 역할을 수행합니다.

이번 기사에서는 SK㈜ C&C에서 활약 중인 현직 소프트웨어 엔지니어를 만나 그들의 업무, 필수 역량, 도전과 보람에 대해 들어보았습니다. 이 직무에 관심 있는 분들께 현실적인 조언과 생생한 경험담을 제공해 드리고자 하니, 끝까지 함께해 주세요!

SK Careers Editor 20기 김태현

[오늘의 인터뷰이를 소개합니다!]

[인터뷰 미리보기]

안녕하세요, SK㈜ C&C 보험사업팀 최연준 매니저입니다. 저희 팀은 금융회사 중에서도 보험회사의 시스템을 개발하는 팀입니다. 보험회사 프로젝트를 수주하여 보험회사 코어 시스템인 기간계 또는 일반 고객이 사용하는 앱 및 웹사이트 같은 채널계 등의 시스템을 개발하는 일을 하고 있습니다.

프로젝트는 보통 분석/설계 – 개발 – 테스트 – 안정화 단계로 진행되는데, 분석/설계 단계에서 요구사항정의서와 기획서 등 고객의 요구사항이 반영된 자료를 기반으로 프로그램을 설계합니다. 개발 단계에서는 해당 설계 내용을 바탕으로 고객의 요구를 반영한 프로그램을 개발합니다. 이후 테스트 단계에서 고객이 직접 테스트를 해보며 기능 추가나 수정을 요구하는 경우도 있습니다. 이 경우엔 PL과 추가적인 요구를 반영할 수 있는지 협의하여 가능 여부를 판단하고 개발을 진행합니다. 고객의 요구를 반영할 수 없는 경우에는 고객과 소통하여 다른 방법을 찾기도 합니다.

[Ⅱ. 직무의 핵심 역량 및 기술]

SW 엔지니어에게 가장 중요한 역량은 의사소통능력과 적극성이라고 생각합니다. 입사 전에는 개발자에게는 기술적 역량이 가장 중요하고 대부분의 업무시간을 컴퓨터와 옥신각신하며 보내게 될 거라고 생각했는데, 입사해보니 컴퓨터로 개발하는 시간보다 사람들과 소통하는 시간이 더 많더라고요. 특히 주니어 엔지니어의 경우 혼자 해결하지 못하는 문제들을 많이 마주하기 때문에 주위 동료들의 도움을 받아야 하는 일이 많습니다. 고객과도 그때그때 피드백을 주고받게 되기 때문에, 당장의 기술적 역량보다는 고객 또는 동료와 적극적으로 소통할 수 있는 역량이 가장 중요한 것 같습니다.

백엔드는 Java와 BXCM이라는 Spring 기반의 상용 프레임워크, 프론트엔드는 JavaScript와 Vue.js 프레임워크를 사용하고 있습니다. 형상관리로는 GitLab, 데이터베이스는 Oracle을 사용합니다. 대부분의 금융 대외프로젝트는 백엔드는 Java 기반 상용 프레임워크, 프론트엔드는 Vue.js 또는 React를 사용하는 것 같습니다.

개발과 운영을 하는 주체가 다른 경우가 많다 보니, 다른 사람이 코드를 보더라도 이해하기 쉽도록 가독성 좋은 코드와 구체적인 주석이 중요한 것 같습니다.

[Ⅲ. 도전과 보람]

입사하고 처음 투입된 프로젝트인 신한SOL라이프 고도화 프로젝트입니다. 입사 전에는 혼자 또는 친구들과 기획부터 개발, 테스트까지 직접 하는 작은 프로젝트만 해보다가 처음으로 참여한 엔터프라이즈 프로그램이었기 때문에 가장 도전적이었던 것 같습니다. 신분증 진위확인, 얼굴인증 등 구현해야 하는 기능도 어려웠고, 기획 담당자 및 고객과 계속해서 소통해야 하는 것도 어려웠습니다. 하지만 선배 매니저님들과 협력사 개발자분들께서 항상 도와주시고 마음 써주신 덕분에 어려운 일도 잘 해결할 수 있었습니다. 첫 프로젝트에 참여하면서 동료들과 도움을 주고받는 게 중요하다는 것을 많이 배웠습니다.

내가 개발한 부분이 에러 없이 한 번에 잘 작동할 때! SW 엔지니어에게 그만큼 보람찬 순간은 없을 것 같습니다. 😊

안 되는 건 없다! 라는 믿음과 자신감이 생긴 것 같습니다. 어떻게 구현해야 할지 감이 안 오던 기능도 결국엔 완성하게 되고, 왜 발생하는지 도저히 모르겠던 에러도 결국엔 해결하게 되는 경험을 통해 할 수 있다는 자신감과 동료들에 대한 감사함을 많이 배웠습니다. 다음 프로젝트는 더 편안한 마음으로 자신감을 가지고 참여할 수 있을 것 같습니다.

아무래도 AI인 것 같습니다. 추론 능력에 특화된 GPT-5의 공개가 예정되면서 소프트웨어 분야에AI의 활용도가 커질 것 같습니다. 그러나 금융회사는 망분리규제로 인해 개발망에서 인터넷을 자유롭게 사용할 수 없기 때문에, AI의 활용에도 관심을 갖되 기본적인 개발 역량에 집중하는 게 중요하다고 생각합니다.

앞으로 SW 엔지니어가 맡게 될 개발 업무 중 비교적 단순한 작업의 비중은 점차 줄어들 것으로 보입니다. 이에 따라, 우리 회사의 SW 엔지니어는 기술적 역량뿐만 아니라 관리 능력과 고객사의 비즈니스에 대한 깊은 이해가 더욱 중요해질 것이라 생각합니다.

[Ⅴ. 직무에서의 성장 및 미래 전망]

프로젝트를 수행하면서 어떤 부분을 고민했고 어떻게 해결했는지 고민해보기! 자기소개서나 면접에서 프로젝트 경험을 언급할 때 기술 스택과 구현한 기능을 나열하기 보다는 해당 프로젝트에서 어떤 어려움이 있었고 어떻게 해결했는지, 이를 통해 어떤 역량을 키웠는지 매끄럽게 이어지도록 준비해야 합니다. 꼭 기술적인 이야기가 아니더라도 팀원 간의 갈등, 일정 관리 등 비기술적인 부분에 대해서도 어필하면 좋습니다.

강조하고자 하는 역량과 그 주장을 뒷받침하는 경험을 깔끔하게 정리해서 말할 수 있어야 합니다. SW 엔지니어 직무를 준비하는 후배들 중 대부분이 공대생이기 때문에 자기소개서 작성이나 면접 준비에 어려움을 겪는 경우를 많이 봤습니다. 이 회사에 지원한 이유와 내가 뭘 잘 할 수 있는지, 즉 지원동기와 나의 역량이 확실해야 하고 경험으로 그 주장을 뒷받침할 수 있어야 합니다. 그리고 SI 업계의 SW 엔지니어는 IT 역량을 통해 고객의 비즈니스 pain point를 해결하는 직업이기 때문에 개발 역량과 프로젝트 경험만을 강조하는 것보다는 소통 능력, 특정 산업에 대한 지식 등 비개발적인 역량을 강조하는 것도 좋은 전략이라고 생각합니다.

[Ⅵ. 직무에서의 성장 및 미래 전망]

가능 여부를 판단하고 고객과 소통하는 것! 데이터베이스의 구조와 ASIS 시스템 등을 잘 분석해서 고객의 요구사항을 구현하는 게 가능한지 판단하고, 불가능하다면 어떻게 수정할지 고객과 조율하는 과정이 중요한 것 같습니다.

프로젝트 계약 범위가 정해져 있기 때문에 고객의 추가 요구사항을 무조건 수용할 수는 없습니다. 고객의 요구사항이 변화하거나 추가되는 경우에는 먼저 기술적으로 가능한지 판단하고, 이후 PL님과 협의를 거쳐 해당 요구사항을 수용할지 결정합니다.

막상 소프트웨어를 개발하는 과정에서 구현이 어려워지는 경우, 먼저 선배님들과 동료 개발자들에게 도움을 청해서 함께 고민합니다. 그래도 구현이 어렵다고 판단되면 고객에게 구현이 어려운 이유를 설명하고 요구사항을 조정하고 기획을 변경하기도 합니다.

개발 용어 사용을 최대한 자제하고 사용자 입장에서 설명하려고 노력합니다. 그래도 설득이 어려운 경우에는 고객사의 IT 인력과 먼저 이야기하고 도움을 받는 경우도 있습니다.


네, 이렇게 인터뷰를 통해 SW 엔지니어 직무는 단순히 기술적인 역량만으로는 성공할 수 없으며, 고객과의 소통 능력과 문제 해결 능력이 필수적이라는 점을 다시 한번 느꼈습니다.

끊임없이 변화하는 기술 트렌드 속에서도 SW 엔지니어들은 끈기와 도전 정신으로 문제를 해결해 나가고 있었습니다.

앞으로 IT 산업에서 소프트웨어의 역할이 더욱 커질 것으로 예상되는 만큼, SW 엔지니어 커리어를 꿈꾸는 분들께 이번 기사가 유익한 정보가 되었기를 바랍니다. SK C&C와 함께 성장할 미래의 SW 엔지니어들을 응원하며, 다음에도 더욱 알찬 기사로 찾아뵙겠습니다. 감사합니다!