안녕하세요 진솔님! 본인 소개를 부탁드려요.
안녕하세요 저는 이번에 3개월의 인턴과정을 끝내고 입사하게 된 허진솔 이라고 합니다. 현재는 엔드포인트보안 연구개발실 Endpoint팀에 소속되어 있습니다.
Endpoint팀이 하는 일과, 근무 환경이 궁금합니다.
팀 명에 맞게 사용자의 단말에서 작동하는 프로그램을 만들고 있습니다.
메인 언어로는 C/CPP를 사용하고 있으며 사용 OS로는 Windows, Linux, MAC 등이 있습니다.
Endpoint팀만이 가지는 특징이나, 필요한 역량이 있을까요?
사용자의 단말에서 동작하는 Agent를 만드는 팀인 만큼 해당 언어에 대한 이해와 숙련은 필수적이라고 생각합니다. 또한 어느 OS에서 개발할지 모르기에 다양한 OS 사용 경험이 중요하고요. 여러 사람이 하나의 Agent를 만드는 만큼 협업에 대한 경험, 의사소통 능력이 필요한 부분이라고 생각합니다.
C/CPP 언어만의 특징이 있을까요?
타 언어와 비교하면 불친절한 언어라서 개발자가 놓치는 작은 실수도 시스템에 큰 영향을 미칠 수 있다고 생각합니다. 간단한 예를 들자면 Memory alloc/free의 경우 사용자에게 직접적인 문제를 일으킬 수 있으며 타 언어는 자체적으로 해결해 주는 경우가 많지만, C/CPP에서는 개발자가 직접 신경 써야 하는 요소입니다.
또한 여럿이 개발을 하고 서로에게 영향을 미칠 수 있기 때문에 다양한 IDE를 쓸 줄 알아야 팀에 맞춰서 작업할 수 있습니다.
진솔님의 지니언스 입사 과정도 궁금합니다.
지금은 C/CPP 개발자로 일하고 있지만 실제로 C/CPP를 이용하여 개발한 경험은 많지 않았습니다.
그래도 다양한 언어를 이용하여 프로젝트를 진행 한 경험이 있으며 코딩 테스트 등으로 C/CPP를 공부하고 있었기 때문에 어느 언어를 쓰게 된다고 해도 사용할 수 있는 자신감은 있었습니다.
또 개발 공부뿐만이 아니라 보안, 암호학, 포렌식 등 다양한 분야에 대해서 공부했으며 제가 진행 한 프로젝트에서 담당한 부분에 대해서는 확실하게 알고 있었고 면접에서도 아는 것은 확실하게 말하고 모르는 것에 대해서는 모른다고 대답한 것이 긍정적으로 작용하지 않았나 생각됩니다.
그 외에도 업무를 할 때 필요한 역량이 있을까요?
문제가 발생 시 다양한 시각에서 접근할 수 있는 분석 tool을 다룰 수 있으면 업무를 진행할 때 도움이 많이 될 듯합니다. 실제로 저도 과제를 진행하면서 분석 tool을 사용하여 실마리를 얻은 경우가 많아서 tool을 사용해 보고 익숙해지는 것을 추천해 드립니다
마지막으로 예비 지니안분들께 한마디 부탁드립니다.
취업을 준비하면서 제가 제시할 수 있었던 것은 수상 경력은 많지 않지만 다양하게 진행 한 프로젝트에서 무엇을 담당했고 어떤 것을 배웠으며 뭘 할 수 있는지 였습니다.
자신이 할 수 있는 것을 보여주는 것이 시작의 기회가 될 수 있다고 생각합니다.