나는 미국에서 취업할 수 있을까?

미국에 유학을 가겠다는 꿈을 꾸기 시작한 것은 본인이 대학에 진학 한 뒤 20살 때 쯤이었다. 외국의 고등학교에서 카이스트로 진학한 친구들과 친하게 지내면서 많은 외국 생활에 대한 이야기를 듣게 되고 그러면서 그런 생활을 동경하게 되었던 것 같다. 그리고 시간이 갈수록 점점 실망만 가득했던 학교 생활의 탓도 있었던 것 같다. 좀 더 좋은 교육, 그리고 전세계를 누비면서 살고 싶다는 생각이 강해서 나는 유학을 가겠다는 꿈을 꾸기 시작했던 것 같다.

왜 미국이었을까? 미국은 내가 배우는 학문의 최정점에 있는 나라이다. 전자공학을 전공했고 학과의 대부분의 교수님들이 미국 유수의 대학에서 박사를 받고 카이스트에서 전자공학을 가르치고 계셨다. 학과의 전공서적은 거의 대부분이 영어로 된 미국 교수들이 쓴 교과서였고 대부분 유명한 교수들은 미국의 대학에서 가르치고 있었다. 이런 배경이다 보니 당연히 내가 가서 공부하고 싶은 가장 좋은 나라는 미국이 될 수 밖에 없었다.

대학을 졸업하고 첫 직장 생활을 시작하면서 한국에서 일하는 것에 적잖아 실망을 했다. 중소기업에 몇년동안 있었지만 대기업과의 일도 상당히 많아서 그 곳의 문화를 간접적으로 체험해 볼 수 있는 많은 기회들이 있었다. 우선은 갑과 을 관계. 협력 업체의 입장에 있었기에 대기업이 하라면 무조건 해야 되는 압력을 체험하면서 사람들이 취업 재수를 해서라도 어떻게든 대기업에 가려는 이유를 이해하게 되었다. 그리고 술과 담배가 동반되는 회사 문화는 나에게 다른 나라에서의 취업을 더욱 꿈꾸게 하였다.

하지만 미국 취업이 가능할까? 이 질문을 가지고 거의 10년이 넘는 시간동안 씨름했던 것 같다. 유학은 어떻게 가더라도 내가 그곳에서 태어나고 자란 미국 사람들과 경쟁해서 미국 회사에서 일을 할 수 있을까? 아예 유학은 좀 더 쉬울 것 같았다. 유학 간 선배들, 그리고 친구들이 있기에 선례를 볼 수 있었다. 한국에서 태어나고 자라서 영어도 잘 못하는데 과연 노력으로 부족한 부분들을 채울 수 있을까?

유학을 2번 실패하고 나서 영어도 배우고 미국 생활도 한번 알아볼 겸 해서 아리조나의 Tucson이라는 도시에 있는 University of Arizona에서 어학 연수를 했었다. 이 대학으로 간 것은 서울대에서 지도 교수님의 모교이기도 하고 대학원 전공으로 MIS (Management Information System) 분야를 생각하고 있었기 때문에 MIS 전공의 탑 스쿨이었던 그 곳 비즈니스 스쿨의 교수님도 만나보고 싶었기 때문이다.

아리조나에 있으면서 홈스테이 프로그램을 통해서 Read More...

미국 소프트웨어 엔지니어 테크니컬 인터뷰 질문들

미국에서 소프트웨어 엔지니어 취업을 준비를 하면서 제일 많이 공을 들였던 것이 Technical Interview이다. 원하는 잡 포지션을 얻느냐 마느냐 하는 것이 주어진 기술적 질문에 적절한 답을 하고 상황에 요구되는 알고리즘과 데이터 구조를 보여주는 것으로 대부분 결정된다고 해도 과언이 아니다.

테크니컬 인터뷰의 본 게임에 들어가기 전에 워밍업으로 많이 주어지는 질문 중 가장 빈도가 높고 기본이 되는 질문이 객체지향 프로그래밍 (Object-Oriented Programming) 개념에 관한 것이다. 의외로 상당히 오랜 시간을 프로그래밍에 투자한 사람도 이 개념들을 설명해 보라고 하면 쉽게 대답하지 못하는 경우가 많다. 본인이 인터뷰를 진행하던 중에도 상당히 높은 빈도로 객체지향 개념에 대해서 질문을 받았는데 그 때 본인은 객체 지향에 대한 개념과 영어 설명은 달달 외우고 다녔기 때문에 인터뷰에 있어서는 크게 어려움이 없었다. 지금 현재 일하고 있는 델에서는 처음 잡 인터뷰 때 객체 지향 질문에 대한 답을 꽤 자세히 잘 설명해서 그 때 인터뷰를 담당했었던 Jeff에게 꽤 좋은 인상을 남겼던 것으로 기억하고 있다.  기억이 가물가물 하지만 Inheritance와 Polymorphism에 대해서 질문을 했는데 잘 아는 개념이라서 어려움 없이 설명을 했다. 그러자 그가 상당히 많은 소프트웨어 엔지니어 포지션 지원자들이 이 질문에 대답을 제대로 하지 못한다고 해서 조금 놀란 적이 있다.

다음 예제를 가지고 자신이 얼마나 객체지향(OOP)에 대해서 이해하고 있는지 점검해보자.

다음 리스트에서 몇 개를 설명할 수 있는지 체크해보자. (그리고 영어로 몇 개를 설명할 수 있는지 생각해보자)

Object-Oriented Programming Concept

1. class, object (and the difference between the two)
2. instantiation
3. method (as opposed to, say, a C function)
4. virtual method, pure virtual method
5. abstract class
6. class/static method
7. static/class initializer
8. constructor
9. destructor/finalizer
10. superclass or base class
11. subclass or derived class
12. inheritance
13. encapsulation
14. polymorphism (without resorting to examples)
15. multiple inheritance (and give an example)
16. delegation
17. composition/aggregation
18. interface / abstract class
19. interface/protocol (and different from abstract class)
20. method overriding
21. method overloading (and difference from overriding)
22. is-a versus has-a relationships (with examples)
23. method signatures (what’s included in one)
24. method visibility (e.g. public/private/other)

그리고 프로그래밍에 대한 기본적인 이해를 묻는 문제도 나오게 된다. 가끔 미국에서 소프트웨어 엔지니어가 되기 위해서는 어떤 언어를 Read More...

미국에서 소프트웨어 엔지니어로 산다는 것 (2)

마이크로소프트웨어 2013년 1월호에 게재된 필자의 두번째 글입니다. 당시 분량의 제한으로 내용들이 누락된 부분이 있었는데 그 부분들을 다시 추가하고 수정해서 제 블로그에 올립니다

마이크로소프트웨어 2012년 12월호 게재기사

마이크로소프트웨어 2012년 12월호 게재기사

소프트웨어 개발자의 천국

미국에서 소프트웨어 엔지니어로 산다는 것(2)

필자는 20살 때부터 세상의 기술을 선도하는 글로벌 IT기업들이 많이 자리잡고 있는 미국에서 일하겠다는 꿈을 꾸었다. 31살의 나이에 미국으로 유학 와서 늦게나마 전산학을 전공했지만 외국인으로서 현지 기업의 문턱을 넘는 것은 그리 쉬운 일이 아니었다. 하지만 맨땅에 헤딩하는 심정으로 1300여개 의 원서를 보내고 수십 번의 전화 인터뷰를 거쳐서 미국 텍사스 현지 IT기업에 취업해서 2011년부터 지금까지 소프트웨어 엔지니어로 일해오고 있다. 한국과 미국에서 개발자의 삶을 경험하면서 소프트웨어 엔지니어의 천국이라는 미국에서 소프트웨어 엔지니어의 삶이 어떤지를 얘기하고, 해외로 진출을 준비하는 마소 독자들에게 도움이 되길 바라는 마음에서 실제 경험에서 우러난 조언들을 담아보았다.

이승훈 biosuefi@gmail.com | 미국 예일대학교 전산학과 석사 졸업 후, 현재 텍사스 델 컴퓨터 본사에서 소프트웨어 엔지니어로 일하고 있다. 전자공학과 전산학을 전공하고 하드웨어 및 펌웨어 엔지니어로 근무한 경험을 살려 델 컴퓨터의 바이오스와 UEFI를 개발하고 있다. 아직 미국 생활이 낯설고 매일이 도전의 나날이지만 새로운 세상을 경험한다는 기쁨에 차 생활하고 있다.

새로운 세계를 경험 할 수 있다는 것은 분명 인생에서 가질 수 있는 몇 안 되는 기회일 것이다. 하지만 그만큼 이전에 익숙하던 것들을 버리고 새로운 세상에 적응해야 된다는 위험요소가 따르기도 하는 일이다.

대학에서 전자공학을 전공한 후 한국에서 개발자로 고되게 일하면서 소프트웨어 개발자들의 천국이라는 미국에서 일하면 좋겠다는 생각을 막연히 가지게 되었다. 하지만 영어도 안되는데 내가 그곳에서 제대로 일을 할 수 있을지 하는 의문점도 많이 들었고 어떤 과정을 거쳐야 되는지 조언해 주는 분도 없었다. 관련 유학 게시판과 책을 보다보면 미국에서 유학생들이 졸업하고 취업할 수 있는 확률은 너무 낮아서 거의 불가능이라고 하는 분이 많아서 유학을 가면서도 많은 의구심이 들었던 것이 사실이다. 하지만 실제 도전을 해보고 그 과정들을 하나씩 밟다보니 어렵기는 하지만 불가능은 아니라는 것을 알게 되었다. 물론 유학 준비와 현지 취업을 하는 가운데 언어 문제, 문화 Read More...

미국에서 소프트웨어 엔지니어로 산다는 것 (1)

마이크로소프트웨어 2012년 12월호에 게재된 필자의 글입니다. 당시 분량의 제한으로 내용들이 누락된 부분이 있었는데 그 부분들을 다시 추가하고 수정해서 제 블로그에 올립니다

마이크로소프트웨어 2012/12

마이크로소프트웨어 2012년 12월호 게재기사

소프트웨어 개발자의 천국

미국에서 소프트웨어 엔지니어로 산다는 것(1)

고된 프로젝트 일정으로 야근을 반복하던 국내에서의 개발자의 삶은 필자로 하여금 개발자의 꿈을 포기하게 했다. 그 후 전혀 다른 진로를 모색해보기도 했지만 컴퓨터 프로그래밍의 매력은 필자를 쉽사리 놓아주지 않았고 항상 소프트웨어 개발자의 길에 남다른 연민을 느끼게 했다. 그러던 중 미국 유학을 통해 전산학을 공부하고 미국 현지에서 소프트웨어 엔지니어로 취업할 것을 결심하게 됐다. 새로운 전공과 영어라는 언어적 문제 그리고 미국이라는 낯선 환경에서 취업을 준비하면서 여러 험난한 과정을 겪었지만 결국 바라던 미국 기업에 취업해 지금까지 소프트웨어 엔지니어로 일하고 있다. 이 글이 소프트웨어 엔지니어의 ‘천국’이라는 미국으로의 진출을 준비하는 독자들에게 도움이 되길 바라며 필자가 미국 현지 취업을 준비하며 겪은 일을 이야기해 본다.

이승훈 biosuefi@gmail.com | 미국 예일대학교 전산학과 석사 졸업 후, 현재 텍사스 델 컴퓨터 본사에서 소프트웨어 엔지니어로 일하고 있다. 전자공학과 전산학을 전공하고 하드웨어 및 펌웨어 엔지니어로 근무한 경험을 살려 델 컴퓨터의 바이오스와 UEFI를 개발하고 있다. 아직 미국 생활이 낯설고 매일이 도전의 나날이지만 새로운 세상을 경험한다는 기쁨에 차 생활하고 있다.

고된 엔지니어의 삶

2006년 1월의 마지막 날. 병역특례를 마치고 본인이 한국에서 개발자로의 내 경력에 종지부를 찍은 날이다.

어릴 때부터 수많은 전자키트를 납땜을 해가며 만들고, Turbo C로 여러 프로그램을 만들어보면서 컴퓨터와 프로그래밍에 관심을 가지고 있던 나는 대학교에서 전자공학과를 전공으로 선택하면서 컴퓨터와 더욱 깊은 인연을 쌓아나가게 되었다. KAIST 재학 시절, 창업멤버로 일했던 한 벤처기업에서의 경험은 나의 관심과 재능이 하드웨어보다는 소프트웨어 분야에 있지 않을까 하는 생각을 갖게 해주었다. 하지만 졸업을 하고 병역특례에서 경험했던 개발자로서의 삶은 나에게 큰 실망을 안겨주었다. 끊임없이 야근을 하고 고된 프로젝트 일정에 지쳐 있던 나는 20대 초반의 젊은 나이에 과로 때문에 건강에 이상이 있을지도 모른다는 말을 병원에서 듣고 적잖이 충격을 받게 되었다. 또한 아침부터 밤늦게까지 Read More...

Share This