신입사원의 이야기를 통해 삼성전자 반도체의 다양한 직무를 알아보고, 입사 준비 과정부터 회사 생활까지 엿볼 수 있는 ‘나는 신입사원입니다’ 시리즈 3탄이 돌아왔습니다. 세 번째 주인공은 바로 ‘반도체 소프트웨어 엔지니어’ 조원근 님과 강철호 님입니다.
컴퓨터 공학을 전공하고 소프트웨어 엔지니어로 삼성전자 반도체에 입사했지만, 서로 다른 업무를 하고 있는 두 사람! 반도체의 종류만큼 다양한 프로젝트를 진행하는 소프트웨어 엔지니어의 세계로 들어가 볼까요?
“학부에서 컴퓨터 공학을 전공한 뒤, 컴퓨터 아키텍처(Computer Architecture) 연구실에서 석사 과정을 밟았습니다. 그리고 지금은 메모리사업부 S/W개발팀 내에서도 낸드플래시 관련 소프트웨어 솔루션을 개발하고 있는데요, 석사 당시 진행했던 연구와 유사한 업무입니다. 현재 저는 스토리지 시스템 개발 프로젝트에 참여 중인데요. 총 32개의 NVMe SSD가 장착된 서버로 스토리지 시스템을 구축해 대용량의 사용자 데이터를 빠르고 안전하게 저장하는 것이 목표입니다. 이 솔루션의 사용자는 데이터센터 업체들로, 해당 프로젝트(Poseidon OS)는 오픈 소스로도 공개되어 있습니다.”
“오픈 소스 기반의 업무는 전 세계의 다양한 개발자들과 소통하는 커뮤니티 활동을 할 수 있어서 더욱 매력적인데요. 저는 무엇보다도 회사의 새로운 도전에 동참하고 있다는 점 때문에 더욱 큰 자부심을 느낍니다.” 강철호 님
“저도 컴퓨터 공학을 전공했는데요. 컴공 전공자들이 주로 선택하는 어플리케이션 개발 업무가 아닌, 다른 곳에서는 할 수 없는 일을 하고 싶어서 메모리사업부 S/W개발팀에 지원했습니다. 강철호 님과 같은 팀에 근무하지만, 우리 팀 내에는 매우 다양한 업무들이 있고 규모도 상당한데요. 저는 SSD에 들어가는 임베디드(embedded) 시스템을 개발하고 있습니다.
좀 더 자세하게 말씀드리면 SSD 컨트롤러에 내장되는 소프트웨어, 즉 펌웨어(firmware)를 개발하고 있는데요. 펌웨어는 데이터를 읽고 쓰는 처리방식과 메모리 관리 방식을 결정하는 등 SSD의 두뇌라고 표현할 수 있습니다. SSD 제품의 성능과 신뢰성에 영향을 주기 때문에, 저는 펌웨어 개발을 통해 제품의 가치를 높이는 중요한 역할을 하고 있다고 생각합니다.” 조원근 님
삼성전자 반도체 소프트웨어 엔지니어는 다른 직군과 채용 전형이 약간 다릅니다. 1차로 서류 전형을 통과하면, 2차에서는 GSAT 대신에 소프트웨어 역량 테스트를 통해 실무 능력을 확인하게 되는데요. 강철호 님과 조원근 님은 입사를 위해 어떠한 방법으로 준비했을까요?
“저는 소프트웨어 역량 테스트에 대비하기 위해 ‘SWEA(Samsung SW Expert Academy)’에 있는 모든 기출 문제들을 실전처럼 푸는 연습을 했습니다. 실제 테스트는 3시간 동안 주어진 문제들을 풀어야 하기 때문에 강한 집중력이 요구되는데요. 시험장 분위기를 스스로 조성하기는 어렵기 때문에 저는 스터디 그룹을 구성했습니다. 약속된 시간에 영상통화를 켜놓고, 3시간 동안 각자 문제를 풀고 서로의 코드를 리뷰하는 식이었죠. 실제로 이러한 연습이 많은 도움이 되었습니다.” 강철호 님
“저는 ‘백준’이라는 사이트를 통해 알고리즘 문제를 풀어보며 소프트웨어 역량 테스트를 준비했습니다. 실전처럼 코딩 연습을 하되, 3시간 동안 풀어야할 문제를 2시간 30분 내에 푸는 연습을 했죠. 그리고 면접 관련해서는, 컴퓨터 공학 전공 과목을 열심히 듣거나 전공 서적을 다시 한 번 복습하는 것도 큰 도움이 됩니다.” 조원근 님
“프로젝트 경험도 소프트웨어 엔지니어에겐 중요합니다. 경진대회를 찾아서 도전할 수도 있지만, 저는 삼성 소프트웨어 멤버십을 활용했습니다. 이를 통해 삼성전자로부터 사무실과 장비들을 지원받고 1년에 두 번씩 프로젝트를 진행했어요. 현업에서 일하는 임직원들과 함께 프로젝트를 진행하고, 전국에 있는 멤버십 회원들과 프로그램을 개발하고 발표하는 경진대회에 참여할 수 있는 기회가 주어졌기에 소중한 경험이 되었습니다. 그리고 소프트웨어 멤버십 외에도 SAFFY, SCSA 등 다양한 프로그램들이 많으니 적극 활용하시면 좋을 것 같습니다.” 강철호 님
※ 추천 사이트
– SWEA: https://swexpertacademy.com/main/main.do
– 백준: https://www.acmicpc.net/
이제는 입사 3년차가 된 강철호 님과 조원근 님. 소프트웨어 엔지니어로서 일하며 느낀 사람들의 편견에 대해서도 이야기를 나누어 보았습니다.
“전공이 컴퓨터 공학이고 직업이 개발자라고 하면, 보통 성격이 내향적이라고 생각해요. 다른 사람과 의견을 나누거나 협업하는 일도 별로 없을 거라는 편견도 있고요. 하지만, 현실은 전혀 달라요. 그 어느 부서보다도 자유로운 분위기 속에서 적극적으로 소통합니다. 업무에 어려움이 있을 때 누구에게 도움을 요청해도 모두 자기 일처럼 도와주고 고민합니다. 함께 일하는 선배들과 동기들 모두가 제 멘토인 셈이죠.” 조원근 님
“소프트웨어 엔지니어가 책상에 앉아 조용히 일만 한다고 생각한다면 오산입니다. 경력과 상관없이 모두가 동등한 위치에서 열정적으로 의견을 나눕니다. 각자가 작성한 코드를 공유하고 피드백을 주고 받으며, 주기적으로 워크숍을 열어 세미나를 진행하고 서로의 생각들을 공유합니다. 그 외에도 팀 내에서 자체적으로 운영하는 스터디를 하며 더 나은 개발자가 되기 위해 끊임없이 노력하는 분위기도 조성되어 있죠.” 강철호 님
“S/W개발팀의 자유로운 조직 문화는 팀 내 ‘잡마켓(Job market)’ 제도를 통해서도 엿볼 수 있습니다. 마치 대학교에서 신입생을 대상으로 동아리 회원을 모집하는 것처럼, 일년에 두 번씩 정해진 기간 동안 각 파트 별로 새로운 인력이 필요한 포지션에 대한 홍보를 진행합니다. 시선을 빼앗는 파격적인 포스터를 제작하기도 하죠. 팀에서 잡마켓을 적극적으로 권장해, 역량만 충분하다면 다른 파트로 이동할 수 있는 분위기가 조성되어 있기 때문에 내가 하고 싶은 일이 있다면 바로 도전할 수 있습니다.” 조원근 님
“소프트웨어 엔지니어는 ‘예술가’와 비슷한 부분이 많은 것 같기도 해요. 창의력을 요구하는 도전적인 직업이죠. 그래서인지 팀 분위기도 굉장히 자유로워요. 업무 특성상 개인의 일정에 맞춰 프로그램을 개발하기 때문에 각자의 업무와 근무 시간을 존중해주는 분위기입니다. 물론, 출근 시간도 자유로워요. 개발자라는 직무, 정말 매력적이지 않나요? 하하.” 강철호 님
이처럼 유연하고 분위기 속에서 활발히 소통하며 일하는 반도체 소프트웨어 엔지니어에게 필요한 역량은 무엇일까요?
“소프트웨어를 개발할 때 처음에 코드를 잘 만들지 못하면 실수를 찾아내고 바로 잡는 데에 많은 시간을 소비하게 됩니다. 따라서 처음에 오류 없이 코드를 만드는 꼼꼼함이 필요합니다. 또한 때로는 집요함도 요구되는 경우가 있는데요. 펌웨어는 SSD의 성능과 직결되기 때문에, 같은 기능을 구현하더라도 조금이라도 더 효율적인 동작이 나올 때까지 만족하지 않고 파고드는 집요함과 인내심이 필요합니다.” 조원근 님
“소프트웨어 엔지니어는 장인 정신을 갖고 프로그램을 개발하는 사람이라고 생각합니다. 프로 개발자가 되기 위해서는 끝없이 기본기를 다지고, 테스트 코드를 적극 활용해 실수 없이 양질의 코드를 개발할 수 있어야 하죠. 또 한가지! 회사 생활은 결국 조직원들과 협업해 하나의 프로젝트를 진행하는 것입니다. 소통을 기본으로, 자신이 개발하고 있는 내용들을 팀원들과 공유하고, 협업해 나가는 것이 업무 능력에 큰 영향을 미친다고 생각합니다.” 강철호 님
한편, 반도체 소프트웨어 엔지니어들의 성장을 위해 회사에서도 체계적인 교육 프로그램들을 고안해 실시하고 있다고 하는데요.
“사실 반도체 소프트웨어 엔지니어에 지원하는 사람들 중 많은 수가 반도체에 대해 잘 모르는 상태로 입사합니다. 저 역시 반도체에 대한 지식이 부족했지만, 회사 내 교육을 통해 체계적으로 배울 수 있었죠. 기본적인 코딩 방법부터 임베디드 소프트웨어 교육, 암코어 등 커리큘럼이 잘 짜여 있는데요. 입사 후 약 28주 간의 교육을 받으며 실무를 해나갈 수 있는 지식과 자신감을 얻었습니다.
그리고, 배정받은 파트에서도 신입사원을 위한 교육이 있었어요. 파트원들이 각자 주제를 하나씩 맡아 강의를 진행하는데요. 신입사원은 실무자들의 강의를 직접 들을 수 있어 좋고, 강의자 입장에서도 강의 준비를 하며 한 번 더 공부를 할 수 있는 기회가 주어지기 때문에 서로에게 큰 도움이 됩니다.” 조원근 님
“신입사원에게만 교육의 기회가 주어지는 것은 아닙니다. 최근에 저는 ‘Code Review Agent’라는 교육에 입과했습니다. 소프트웨어 품질 관점에서 코드 리뷰를 잘하기 위해 필요한 강의들을 수강했어요. 이처럼 다양한 교육들이 주기적으로 있는데, 회사의 지원 하에 전문적인 내용을 다루는 양질의 교육을 무료로 배울 수 있어 꾸준히 자기 개발을 할 수 있습니다.” 강철호 님
“최근에 이사를 하면서 가전 제품들을 구매할 일이 있었는데요. 가전 제품 가격이 상당한데, 삼성전자 임직원 전용 서비스인 패밀리넷몰에서 포인트로 냉장고와 세탁기, 에어컨까지 모두 장만할 수 있었습니다. 뿌듯하더라구요.” 강철호 님
“패밀리넷몰은 임직원들 모두가 잘 활용하고 있는 사내 복지 중 하나에요. 자사 전자 제품을 저렴한 가격에 구입할 수 있죠. 그리고 복지 이야기에 사내 식당이 빠지면 섭섭한데요. 삼시세끼 모두 제공할 뿐만 아니라 최신 유행하는 맛집 메뉴들도 종종 나와 먹는 재미가 쏠쏠합니다. 진짬뽕 까르보나라, 순두부 열라면 등 소셜미디어에서 인기 있는 메뉴들도 있어서 오늘은 어떤 메뉴가 나올지 기대되네요.” 조원근 님
“삼성전자 반도체는 하드웨어 제품 개발로 더 잘 알려져 있지만, 소프트웨어 엔지니어에 대한 투자도 적극적인 편입니다. 개발 환경이나 소프트웨어 엔지니어에 대한 이해도 깊고요. 그리고 하드웨어를 다루는 회사이다 보니 아직 출시 전인 대용량, 고성능 SSD를 지원받아 개발 중인 소프트웨어를 테스트해 볼 수 있는 것도 장점이죠!” 조원근 님
“때로는 입사 준비 과정이 막막하다고 느껴지겠지만, 포기하지 말고 소프트웨어 장인이 되기 위해 함께 노력했으면 합니다. 저도 앞으로 더 열심히 노력하겠습니다!” 강철호 님
지금까지 소프트웨어 개발 장인으로 거듭나겠다는 두 명의 신입 소프트웨어 엔지니어의 이야기를 들어보았는데요. ‘나는 신입사원입니다’! 다음에 만날 신입사원은 누구일까요? 2주 뒤를 기대해주세요!
* 기사에 포함된 사진들은 방역 수칙을 준수하여 촬영하였습니다.
기간 설정