소프트웨어 엔지니어링
-
소프트웨어 엔지니어의 개발 전 체크리스트소프트웨어 엔지니어링 2019. 3. 28. 14:15
소프트웨어 엔지니어로서 나는 잠재적인 버그를 예방하기 위한 개발 프로세스에 대해 생각할 수밖에 없다. 세상에 버그가 없는 코드란 없지만, 최대한 버그가 나지 않게 하기 위해 항상 노력해야하는 것이 소프트웨어 엔지니어의 운명이라고 생각한다. 또 버그뿐만 아니라 어떻게 하면 유지보수가 쉽고 확장 가능한 소프트웨어를 만들 수 있는지 항상 고민해야 한다. 팀 단위에서는 Waterfall/Agile 같은 프로세스가 적용되고 이 프로세스 상에서 대부분의 문제가 드러나게 된다. 이런 문제 중에서는 빠르게 해결할 수 있는 것도 그렇지 못한 것도 있다. 특히 빠르게 해결할 수 없는 것들은 개발 당시에 우리가 생각도 못했던 것들 일 때가 많다. 이번 포스트에서는 내가 어떤 이슈(일)을 받았을 때, 일을 시작하기 전 생각하..
-
소프트웨어 엔지니어 코딩 인터뷰 준비하기 (미국)소프트웨어 엔지니어링 2019. 3. 24. 13:04
졸업을 앞두고 미국에 왔을 때 한국에 있을 당시 이력서를 넣고 전화 인터뷰를 본 덕분에 3개의 On Site인터뷰가 예정되어 있었다. 당시 나는 미국의 소프트웨어 엔지니어링 포지션이 어떤 인터뷰를 보는지 제대로 알지 못했고, 단순히 '코딩 할 줄 암'을 잘 어필하면 채용 될 줄 알았다. 그래서 당연히 Cracking the Coding Interview를 간간히 보고 슈도코드를 종이에 몇번 작성 해 보는 것으로 인터뷰 준비가 끝났다고 생각했다. 당시에는 어떤 이유에선지 3곳 모두 채용 확정이 되었지만, 이후에 다른 회사의 면접을 보며 슈도코드를 종이에 적당히 작성 해 보는 것이 결코 코딩 인터뷰 준비의 끝이 아님을 알게 되었다. 그래서 이번 포스트에서 미국 소프트웨어 엔지니어 포지션의 인터뷰가 어떻게 진..
-
컴퓨터 공학에 접근하는 방법소프트웨어 엔지니어링 2019. 3. 11. 11:05
학부 시절에 학교에서 연 세미나에 참석 한 적이 있다. 이 세미나에선 실리콘밸리에서 일하는 한국인 엔지니어들이 와서 자신의 경험과 취업 경로에 대해 이야기 해 주었다. 강연자 중 한 분이 AAFMG (Apple, Amazon, Facebook, Microsoft, Google)중 하나에 재직중이셨고, 그 때문에 나도 세미나 시작 전 부터 기대하고 있었다. 하지만 그 분의 강연 후 나는 많이 좌절하고 말았다. 그 분은 어려서부터 알고리즘 대회에 나가 수상한 경력이 있었고, 국내 최고 대학 중 하나에 진학하셨으며 대학원 진학 후 어떤 컨퍼런스에서 AAFMG에게 면접 제의를 받아 입사 한 경우였다. 전부 나와는 동떨어진 이야기였다. 그 분은 알고리즘을 정말 잘하셨기 때문에 AAFMG 면접을 통과하는 것은 당연..
-
프로그래밍 언어, 컴파일러, 인터프리터소프트웨어 엔지니어링 2019. 2. 27. 17:50
소프트웨어 엔지니어링의 세계로 처음 들어오는 사람들이 가장 배우는 것 중 하나가 바로 프로그래밍 언어이다. 인간인 우리가 프로그래밍 언어로 프로그램을 작성하면 컴퓨터가 이를 실행하기 때문이다. 프로그래밍 언어를 배우지 않으면 어떤 컴퓨터 전문가라도 어느 순간 벽에 부딪히고 만다. 또 프로그래밍 언어를 통해 컴퓨터의 동작 방식이나 한계점을 유추 해 볼 수도 있다. 그래서 많은 사람들이 원하는 프로그래밍 언어를 습득하면서 소프트웨어 엔지니어링을 처음 시작한다. 하지만 이렇게 진입로가 되는 프로그래밍 언어, 우리는 제대로 이해하고 있을까? 프로그래밍 언어란 대체 무엇인가? 컴퓨터가 이해하는 언어라는 것은 알고 있다. 그렇다면 컴퓨터가 이해한다는 것은 무슨 의미인가?목차프로그래밍 언어란?컴파일러(Compiler..
-
소프트웨어 엔지니어가 되는 법소프트웨어 엔지니어링 2019. 1. 22. 12:57
내가 컴퓨터 공학을 전공하기로 했을 때 쯤 주변에서 컴퓨터 공학은 더 이상 발전 할 게 없고 이미 레드 오션이라는 말을 들었었다. 그래서 대학교에 진학 할 때 쯤 많은 걱정을 안고 있었다. 그러다 2학년 때 쯤 각종 클라우드 서비스와 인공지능이 붐을 일으켰고, 소프트웨어 엔지니어 수요는 기하 급수적으로 늘어났다. 그 붐에 힘입어 나도 어떻게 저떻게 취업을 했고 지금은 미국의 대기업 중 하나에서 소프트웨어 엔지니어로 일 하고 있다. 소프트웨어 업계의 전망과 급여에 매혹돼 요즘 많은 사람들이 소프트웨어 엔지니어로 전향하려는 경우가 많아지고, 따라서 나 같은 소프트웨어 업계 종사자들이 진로와 전망에 대해 많은 질문을 받곤 한다. 어디서부터 어떻게 시작해야되는지. 무슨 언어를 배워야 하는지, 어떤 자격증을 따야..