[생각의 정리] 프로그래머 취업

취업에 대한 제 생각을 정리 해보았습니다. 당연하다고 생각 할 지 모르지만 아직 이걸 모르고 취업 준비를 하는 사람들이 많은 것 같아 정리를 해봅니다.

시장조사

어떠한 일거리가 있는지,  일자리를 잡기 위해서 요구되는 스킬이 무엇인지 조사를 해야 합니다.  대게 큰 기업의 신입 사원은  요구조건이 분명하지 않습니다. 경력 공개채용을 보고 이 회사에서 어떤 능력을 갖춘 인재를 원하는지 확인 해볼 필요가 있습니다.

요구조건을 갖추기 위해 내가 부족한 것은 무엇인지, 투자 해서 얻을 수 있는 기술인지, 투자한 비용을 충분히 회수하고 남을 만한 것인지 고려 해봐야 합니다.

물론 선택의 폭이 넓다면 모르겠는데 가진 능력이 아무 것도 없다면

좋은 커리어를 쌓을 수 있는 회사로 들어간다. (조직문화가 좋고 배울 것이 많은 곳)

기회를 얻고 성장 할 수 있는 곳이 좋습니다.

내가 좋아하는 것과 잘 하는 것을 구분

일은 왜 해야 할까요? 바보 같은 질문은 없습니다.

지금 사는 사회가 자본주의 사회고 일을 하지 않으면 최소한의 생계 조차 보장받기 힘든 환경이기 때문입니다. 일을 하지 않아도 불로소득으로 생계가 충분히 보장되는 것이 아닌 이상 일을 해 돈을 벌어야 합니다.

경재 논리로 보면 최대한 적은 시간을 일하고 최대한 많은 돈을 버는 것이 효과적 입니다.
본인에게 질문 해볼만한 것들 입니다.

내가 잘 하는 것을 하는 것이 유리할까요?
좋아하는 것을 하는 것이 유리할까요?
좋아하는 것을 잘 할 수 있을까요?
좋아하는 것을 해서 나를 사줄 만한 일자리 시장이 충분히 큰가요?

자기계발

잘 하는 것이 없다고 포기하고 낙심 할 필요 없어요. 태어나서 전문가는 없습니다.

본인이 부족한 것이 무엇인지 인지하고, 채워넣고, 연마 해야 전문가가 될 수 있다고 믿습니다.

하루 아침에 이룰 수 있는 것은 없습니다.

그리고 맹목적인 노력만으로 위대 해질 수 없습니다.

인생은 마라톤 입니다. 시험기간이 정해져 있고 그 기간 안에 최대한 많은 것을 암기하고 체화 해서 성적을 받는 것이 인생이 아닙니다. 평가를 위한 기간은 없습니다. 오늘보다 내일 더 나아졌나?를 보면 좋지 않을까요?

주어진 시간을 최대한 효율적으로 활용해서 인생을 지혜롭게 사는 것이 행복한 삶을 사는 비결이 아닐까 생각 합니다.

커리어

전 성공적인 커리어를 걸어 왔다고 자랑 하기는 어렵지만 나쁘지 않은 경력을 만들어 왔습니다.

웹 서버 3년 10개월 그리고 지금은 iOS App Developer를 하고 있습니다.

모바일 앱개발은 웹 서버와 긴밀한 관계가 있기 때문에 도움이 되었으면 되었지 마이너스가 되지는 않는 것 같습니다.

글을 쓰는 시점에 모바일 개발 경력이 2년 정도 되어 가는데요
지금은 모바일 개발 생산성, 그리고 노하우를 좀 더 축적 하려고 노력 하고 있습니다.

그리고 틈틈이 영어 공부를 해서 세계적인 개발자가 되는 것을 목표로 잡고 있습니다.
(다른말로 세계 제일의 약장사인데 파는 약이 잘 듣는거죠)

학위/학벌

어렸을 때부터 천재적으로 프로그래밍에 뛰어난 친구들이 말하길 학위/학벌이 중요하지 않다고 말하는 것은 적절하지 않다고 생각 합니다.

howto를 모르는 상황에서는 뛰어난 친구들에게 배워야 성장 할 수 있다고 생각 합니다.

제 생각에 학벌은 공부하는 주변 환경을 의미하며 학벌이 좋은 만큼 공부하기 괜찮은 환경(나름 척박하고 장학금을 받기 힘든, 그리고 똑똑한 친구들이 많은 곳)에서 공부 할 수 있습니다. 본인이 천재라면 모를까 평범하다면 좋은 학교를 가서 잘 하는 친구들을 많이 만들고 배우는 것도 성장하는데 도움이 됩니다. 하지만 전 그렇게 좋은 학교를 나오지 않았지만 운이 좋게 뛰어난 친구를 만나 개발로 밥벌어 먹고 살게 되었습니다.

학위는 대기업의 서류전형을 통과 하기 위한 하나의 증서로 생각 합니다. 학위보다 중요한 것은 커리큘럼 입니다.

학사 과정은 체계적인 교육 과정으로 소프트웨어 개발자로 성장하기 위한 기반을 쌓게 됩니다.

학사를 졸업 한 뒤에 취업, 대학원 아님 요즘은 창업도 하는 것 같습니다.
(대학원은 제가 걸어본 길이 아니라 잘 모르겠군요)

뛰어난 동업자가 있는게 아니라면 취업하여 인맥과 실력을 쌓는 것이 나중에 창업할 때 더 도움이 많이 됩니다.

한 5년 뒤에 직장생활에 대한 글도 써볼 수 있을 것 같네요.

광고

[ios] 아이폰 만랩을 향해서 – 2 중간 점검

내가 부족한 것이 무엇인지 목록으로 정리한다.

  1. 기초를 다진 뒤에
  2. UI 부분 신기술, 노하우를 쌓고
  3. 아키텍쳐를 고민하면서
  4. 틈틈히 xCode의 유용한 부분을 익힌다.
  5. 신기술은 필요하면 공부하고
  6. 강의 저서활동을 위해서 공부한 내용은 반드시 글로 다듬어 남긴다.

잔여 목표

기초 다지기

Back to the basic!!!!

NSOperation

UI

Auto-layuout,intrinsic content size, class-based layouts  만랩 찍기(2015.11.06 완료)

self sizing table view cells

NavigationBar, Custom BarButton Item, Backbutton “title” 항상 나오지 않도록 하는 방법은?

UIViewController Navigation technique(modify mutable navitaionController.viewControllers)

StackVC, SplitVC 사용 방법 익히기.

GestureRecognizer Interface Builder 에서 사용하는 방법 익히기 (code로 하는건 쉽지)

아키텍쳐

framework of Managing object’s Life Cycle (like spring bean container)

Open source code 분석 & Best Practice가 될만한 코드 패턴 배우기.

TDD, 코드 퀄리티

테스트 자동화 with os-x server with xcode’s bot

UITest

정적 결함 분석 & Quality Assurance

xCode

xcode 설정 -> build phase 분리하기

xcode build -> ad-hoc으로 배포하기

xcode 테스트 자동화 -> Source Code, UI Test 자동화

StoryBoard -> 참조(스토리보드가 너무 무거워 지는 이슈가 있어서 xcode7부터 스토리보드 reference가 도입됨)

신기술

iWatch OS 2

tvOS

OS-X

Swift2

끝판왕

강의 & 저서 활동. (여기까지 가는데 얼마나 걸릴까?)

[ios] 아이폰 만랩을 향해서 – 1 목표 설정

[생각의 정리- 딴생각] 중간점검

내가 부족한 것을 중간 점검 해보자.

0. 테스트 자동화 (os-x 서버에 테스트 기기 붙여서 테스트 자동화 & 유닛 테스트 & 튜닝을 위한 성능 테스트 자동화, Memory Leak 탐지 자동화, 코드 퀄리티 관리, 정적분석(xcode 있나?), Daily Build(Nightly Build), 문서 자동화
욕심은 겁나 많다….

난 일중독이 아니라 이런 공부가 좋은듯 ㅋㅋ (Manage myself , Self Inspiration, Self…음 물은 Self 다)

1. Swift (생산성 향상에 도움이 될 것 같다. 이제 공부할 때다)

2. Object Life Cycle Management Framework for Obj-C and Swift
Spring과 같은 강력한 뭔가 없다. 클라이언트 코드에서는 객체간의 life cycle관리가 꽤 어려운데
Bean container와 같은 녀석이 있으면 참 편할 것 같다는 ㅎㅎ

3. OS X 앱 프로그래밍 (앞으로 윈도우보다 점유율이 더 올라갈 것이다.)

4. AirDisplay 이거보다 싸고 좋은거 내가 만들어 1달러에 팔꺼다.

5. iWatch SDK 나오면 좀 봐야겠다.

6. 웹섹션? 서버 프로그래밍은 3년 넘게 개발 해왔지만 모르는게 많다? 는 아니고
서버 개발이 서버 설정부터 시작해서 튜닝, 네트워크 등등…한 사람이 하기에…
할일이 너무 많아… 다 잘할려면 늙어 죽을꺼야…
굳이 도메인으로만 따지자면 동영상 인코딩, 스트리밍 네트워크 구축 (인증까지 포함해서)
검색이야 Lucene이 이제 다 잡아먹는듯

7. …..아 그럼 연애는 언제하고 결혼은 언제하지… 이게 최우선이다 OTL

최근 생활 패턴은…. 보자…

월 ~ 금 :

프로그래밍 : 총 45시간

정규업무 10:00 – 19:00 (평균 6시간)
퇴근 후 프로그래밍 공부 21:00 – 24:00 (평균 3시간)

독서 : 총 5시간 (출퇴근길 이용)

운동 : 총 2시간…헐…

연애 : 0시간 (없음 ㅠ)

주말 :

프로그래밍 : 총 10시간

19:00 ~ 24:00 평균 5시간

독서 : 0시간

운동 : 1시간?

연애 : 0시간

결혼식 등등 행사 참석 생기면 : 3-4 시간

[생각의 정리] 직장생활을 돌아보며…

문제원인 분석, 끝까지 해결해야 회사 내에서 잘 팔린다.

혹시나 빠른 문제 해결을 위해 원인 분석도 없이 눈가리고 아웅 하지 않았나 반성해 본다.

오버 spec보다는 적정 수준에서 리소스를 활용하여 문제 해결을 할 줄 알아야 한다.

지혜롭게 일을 처리해야 일을 잘 한다는 평가를 받는다.

낮은 자세, 겸손한 자세로 어려움에 처한 동료를 도와준다.
잘난척 하지 말며 위기의 순간이 아닌 이상 판 벌리며 오버하지 말자.

일을 시키는 사람의 입장에서 생각을 해 볼 필요가 있다.
관리자가 되기 위한 필요한 역량은 무엇일까?
윗 사람이 생각하는 뷰나 일 처리 방식, 관리 방식, 비전, 부하직원 케어, 좋은 분위기를 만들기 위한 노력,
팀빌딩, 커뮤니케이션 등 배운 것들은 있는지….

평가를 잘 받고 있고 높은 연봉을 받는다면 회사에서 기대하는 것 만큼 성과를 보여줘야 한다.
또한 회사에서 시키는 일만 해서는  역량 향상을 기대하기 어려우며 그동한 축적해 놓은 것들을 소비하는 상황인 것이다.
일정 시간의 자기 개발 할 시간을 확보해야 롱런이 가능하다.

몸값이 비싸고 능력이 없으면 회사에서 내보내고 싶어하는 1순위가 된다.
즉 이직을 통해 몸값을 높이는 것은 한계가 있고 롱런에 불리하다는 말이 되는데…

회사에서 주는 연봉으로 만족할 사람은 없을 것이다.
그럼 이 상황을 지혜롭게 해결하는 방법은 무엇이 있을까?

1. 월급쟁이로 남아있게 된다면 퇴직 이후의 2모작이 어렵다.
심지어 연봉을 높은 곳으로 옮겨도 이 문제는 해결 되지 않는다.

2. 월급쟁이가 아니라면 창업 준비를 해야 하는데…
창업준비를 할 만한…배울만한 곳이 있을까?

3. 투잡? 사이드잡? 제 2 인생을 위한 자기개발? 앞으로 내가 50의 나이가 되면 시장에서 잘 팔릴까?
나를 대표하는 컨텐츠는 무엇일까?

언제 새로운 기회를 잡기 위해 결정 해야 할까?

잘 생각해보니 눈높이를 조금만 낮추면

내가 하고 싶은 삶의 방향과 기회를 잡을 수 있고
능동적으로 대처할 수 있다는 결론에 도달하게 된다.

즉 시키는 일에 매몰되지 말고 새로운 돌파구를 찾아야 한다.

승진 이후로는 정말 일이 많아진 느낌이다.  조금씩 미래가 불투명해 지기 시작했다.

야근은 내 미래를 당겨쓰는 것임을 명심하며 지혜롭게 이 위기를 해쳐나가자!!!