미국 취업을 위한 Computer Science 유학 프로그램 선택 (1년 석사 vs 2년 석사)

예일에서 마지막 학기를 마무리하면서 끊임없이 직장을 찾아 헤매었다. 예일의 Computer Science 석사 프로그램은 1년에서 4년까지 할 수 있는 유동성이 있는 프로그램이다. 만일 1년에 마칠 역량이 된다면 1년에 끝내도 되고, 시간이 안 되고 역량이 부족하다면 4년까지 지속할 수 있다. 졸업을 하기 위해서는 학점 평균이 High Pass이상이어야 되고 Honor 학점도 최소 하나가 있어야 한다. (예일은 특이하게 A, B, C 식의 학점이 아니고 Honor, High Pass, Pass, Fail 식의 학점을 준다. 그리고 Honor 학점을 받는 것은 무척이나 어렵다) 그리고 그 당시1년에 $32,500에 달하는 학비는 결혼해서 바로 유학 온 본인의 가족에게 큰 부담이었다. 그 상황 속에서 할 수 있는 최선은 첫 번째가 1년 안에 졸업하는 것, 그리고 두 번째가 졸업 후 바로 취업이었다.

사실 예일에 입학하기 전 석사 프로그램이 2년인 것으로 잘 못 알고 있었다. 학과 홈페이지에 가면 모든 신입생들이 읽어야 하는 가이드 같은 것이 있었는데 귀찮아서 읽지 않고 있다가 나중에 입학하고 나서 읽으니 석사 프로그램이 그렇게 돌아간다는 것을 뒤늦게 깨달았다. 하지만 그때는 이미 다른 선택을 하기가 늦은 시기였다.

본인처럼 가고자 하는 학교의 세부 정보를 잘 읽어 보지 않으면 입학하고 나서도 당황할 일이 많이 생긴다 (출처: Yale CS Dept. website)

본인처럼 가고자 하는 학교의 세부 정보를 잘 읽어 보지 않으면 입학하고 나서도 당황할 일이 많이 생긴다 (출처: Yale CS Dept. website)

석사 유학을 가기 위해 학교 정보를 알아보는 시기가 있는데 이 때 자신이 가고자 하는 프로그램이 1년 프로그램인지 아니면 2년 프로그램인지를 알아보자. 그리고 중요한 것이 2년 프로그램이라도 논문을 쓰는 프로그램인지 아니면 그냥 수업만 들으면 졸업할 수 있는 프로그램인지 알아보는 것도 중요하다. 한번은 델에서 같이 일하던 한 친구가 석사학위를 3년동안 한 것을 알게 되었다. 그 이유인즉 석사 논문 때문에 졸업이 늦어지게 되었다는 것이다. 수업을 다 들었고 졸업 가능 학점이 되어도 논문을 필요로 하는 석사 프로그램의 경우 석사 논문이 교수님들의 승인을 받지 못하면 졸업하지 못하는 것이다. 미국 취업이 목적이고 만일 석사 논문이 옵션이라면 논문을 쓰지 말 것을 권한다. 취업 준비를 해야 될 시간에 석사 논문에 발목이 잡힐 수 있기 때문이다.

미국에서 공부를 하는 것은 많은 비용을 수반하는 자신에 대한 투자 기간이다. 그리고 대부분 장학금을 받지 못하는 석사 프로그램의 경우 프로그램의 기간과 성격에 따라서 개인적 예산 책정을 잘해야 되고 경우에 따라 불가피하게 1년을 더하는 경우도 생긴다. 본인도 마지막 학기에 다행히 원하는 성적을 받았기에 다행이지 하마터면 추가로 한 학기를 더 할 가능성도 있었다.

기간에 따른 미국 석사 프로그램의 장점과 단점을 알아보자.

우선 Read More...

재능을 뛰어넘는 노력의 가치

나는 노력의 가치를 안다. 어쩌면 나 자신이 나보다 더 재능 있는 친구들을 더 많이 봤기에 그 간격을 줄이기 위해 노력이라는 것에 엔진에 힘을 실어 준 것이 아닐까 생각한다. 재능은 타고난 것이고 달라질 수 없지만 노력이라는 것은 자신의 의지 여하에 따라 인생에 영향을 준다고 생각한다. 예전에 안철수의 책에서 다음과 같은 문구를 읽은 적이 있다.

“어떤 문제에 부딪히면 나는 남들보다 시간을 두세 배 더 투자할 각오를 한다. 그것이야말로 평범한 두뇌를 가진 내가 할 수 있는 최선의 방법이다.”

나는 이 말이 누구보다 공감이 간다. 이것이 내가 택한 공부의 전략이었고 지금까지 인생을 살아온 길잡이가 되었기 때문이었다.

나에게 있어 중 3이라는 시절은 지금까지의 내 인생에서 가장 중요한 시기였던 것으로 기억된다. 그 때 일년으로 인해서 내 인생의 가치관과 인생관은 많은 변화를 겪게 되었고 지금의 나로 살아오게 된 가장 큰 계기가 되지 않았을까 생각된다. 인생을 살아가다 보면 난관에 부딪힐 때가 많다. 해답은 보이지 않고 도움을 청할 곳은 없고 시간은 자꾸만 흘러가고 있고…… 해답은 보이질 않지만 무작정 걷거나 뛰어야 할 때가 있다. 목적지는 보이지 않지만 나 자신을 믿고 발걸음을 계속 떼어야 할 때가 있다. 밑 빠진 독이라는 것을 알고는 있지만 무작정 물을 부어야 할 때가 있다. 하지만 신기하게도 그런 노력 속에서 시간이 지나면 목적지가 흐릿하게나마 보이고 밑 빠진 독에 물이 차오르는 경험을 할 때가 있었다. 그게 나의 중 3 시절이었다.

나는 국민학교(그 당시는 초등학교가 아니라 국민학교라고 불렀다) 때 공부를 잘했었다. 지금은 가물가물하지만 학교 수업만 듣고 전과 몇 번만 봐도 대부분 반에서 1등 아니면 2등이라는 성적을 받았던 것으로 기억한다. 공부한다는 개념도 별로 없었고 그냥 재미있게 놀면서 학교생활을 했던 것으로 기억한다. 대구에서 명문 학군인 수성구의 명문 학교에 가고 싶었던 나는 경신 중, 대륜 중, 덕원 중의 하나에 걸리기를 기대했지만 엉뚱하게 오성 중학교라는 생각지도 않았던 학교로 가고 말았다. 이 학교에 산을 깎아서 만들었기 때문에 올라가려면 한참을 땀을 뻘뻘 흘리면서 올라가야 하고 학교 건물이 완전 하얕게 되어 있어 정신 병동이라는 별명을 가지고 있었다. (밑에 사진에 보면 알겠지만 산 중턱에 있는 학교다. 덕분에 중학교 3년 동안 엄청난 운동을 할 수 있었다). 아무튼 이 학교에서 중학교생활을 시작하게 되었고 3년 동안 재미있었던 추억 거리를 Read More...

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

미국에 유학을 가겠다는 꿈을 꾸기 시작한 것은 본인이 대학에 진학 한 뒤 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...

이제 블로그를 시작합니다

안녕하세요. 이승훈(미국명: Stanley Lee)입니다.

저는 현재 미국 텍사스에 살고 있고 델(Dell)이라는 컴퓨터 회사에서 소프트웨어 개발을 하고 있습니다. 한국에서는 KAIST에서 전자전산을 전공하고 회사 생활을 몇 년간 하다가 전공을 바꿔 다시 서울대 학부에서 경영학을 전공했습니다. 그 후에는 미국으로 유학와서 예일대학교(Yale Univ.)에서 Computer Science 그리고 지금은 오스틴에 위치한 텍사스 주립대(University of Texas at Austin)에서 Software Engineering을 공부하고 있습니다.

2014년부터 블로그에 관심을 가지게 되어 IT, 소프트웨어, 미국 취업, 공부법, 영어 등의 주제로 글을 써보려고 합니다. 이 공간을 통해 저의 경험과 생각들을 나눌 수 있길 바랍니다.

여기 있는 모든 글들은 제 자신이 많은 시간을 들여 심사숙고하면서 쓴 글입니다. 무단으로 퍼가는 것은 삼가해주시고 필요하시면 링크를 걸어주셨으면 합니다.

Facebook: Stanley S. Lee’s Facebook
LinkedIn: Stanley’s LinkedIn
E-mail: stan at stanstory dot com

Share This