Smart software engineer

3,447 views

Published on

2013년 5월 14일 이화여대 4학년 특강 자료

Published in: Technology
0 Comments
19 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,447
On SlideShare
0
From Embeds
0
Number of Embeds
718
Actions
Shares
0
Downloads
47
Comments
0
Likes
19
Embeds 0
No embeds

No notes for slide

Smart software engineer

  1. 1. Smart SoftwareEngineer2013년 5월 14일윤경구 소장TmaxSoft R&D Center1113년 5월 14일 화
  2. 2. / 25내용(1) Smart 하게 Software 하기(2) 좋은 Software Engineer 란?2213년 5월 14일 화
  3. 3. / 25Software = Smart3313년 5월 14일 화
  4. 4. / 25Software 주도 Smart 혁명4413년 5월 14일 화
  5. 5. / 25SW와 HW, 핵심은 아이디어• Hardware• 차별화 한계 : 시장 경쟁 심화, 기술 차별성 약화• 기술발전 방향의 변화가 많지 않음• Software• 무궁무진한 창의가 발현되고 적용 가능• SW의 진화 방향이 매우 다양• 복잡한 영역일수록 아웃소싱 어렵고 기업의 핵심 경쟁력• 핵심은 아이디어• Hardware냐, Software냐보다는 어떤 문제(what)를 어떻게(how)푸느냐 아이디어가 중요5513년 5월 14일 화
  6. 6. / 25전문 지식과 아이디어• 처음에 아이팟을 구입하고 온오프 스위치와 볼륨이없어 놀랐습니다. 그냥 원반에 화면만 있더라고요.• 옛날 디자이너들이 기계를 만드는 과정은 먼저 엔지니어가 온오프 스위치를 어디에 넣어야 하는지 회로설계도를 만들어서 제약 조건을 달면 디자이너가 설계도를 받아 여러 가지 제약 조건을 만족시키면서가장 예쁜 제품을 만드는 것이었죠.• 애플 디자이너들은 디자인 전문지식뿐 아니라 전자공학 등 다른 분야도 아는 디자이너들이었어요. 그래서 설계도를 받은 후 "온오프 스위치 없앨 수 없나?"하고 말할 수 있었던 거죠. 그래서 아이팟, 아이폰 같은 제품이 나올 수 있었던 거죠. - 안철수6613년 5월 14일 화
  7. 7. / 25전문 지식과 창의• 전문지식 (숙련)• 기본 지식 외에 분석 능력, 통찰 능력의 결합필요로 하는 지식 노동• 창의• 즉자적으로 추론되지 않는 아이디어를 동력으로 하는 지식 노동• 한계를 두지 않는 생각이 중요7713년 5월 14일 화
  8. 8. / 25전문 지식과 창의• 우선 자신의 분야에 1만 시간 정도를 투입해 전문성을 가지고 있어야 하고, 이와함께 전혀 다른 분야 혹은 더 깊은 분야에대한 관심과 공부가 결합됐을 때 창조의힘이 생긴다• Creativity is just connecting things• 슛 2만번안철수Steve  Jobs슬램덩크8813년 5월 14일 화
  9. 9. / 25전문가의 특별한 재능• 완벽한 반복 훈련(최소 1만 시간이 필요)을 통해서미엘린 층이 강화되어 비범한 능력을 가지게 된다• 재능 = 반복 강화 훈련 + 점화 계기 + 코칭축색  돌기미엘린Schwann  세포Ranvier  결절수상  돌기축색  돌기  종단체세포신경핵-  탤런트  코드9913년 5월 14일 화
  10. 10. / 25창의와 천재성• 새로운 발견, 발명(창의)은 논리적으로 추론되는 것이 아니라 직관에 의해 느껴지는 것이다.논리는 이 발견, 발명의 근거를 만들고 검증하는 과정에 사용되는 것이다• 천재는 열정에 불을 붙이는 계기를 발견하는것과 완벽에 이르도록 반복 훈련하여 미엘린층을 강화하는 두 가지에 의해 만들어진다-  Spark  of  Genius101013년 5월 14일 화
  11. 11. / 25두뇌가 생각하는 법• 좌뇌• 직렬처리 방식 (동기식)• 논리성• 자아 인지, 구분• 몸의 오른쪽에 연결• 우뇌• 병렬처리 방식 (비동기식)• 통합적 인지• 몸의 왼쪽에 연결111113년 5월 14일 화
  12. 12. / 25논리력과 창의력• 논리능력의 향상• 순차적 논리성, 귀납과 연역을 교차한 지적 추상화 능력을 끊임없이발전시켜야• 분석과 총화, 추상화, 은유, 연역의 반복• 창의의 향상• 생각을 막지 말고 끝없이 의문을 던져야.• 비동기적 아이디어• 천재는 완벽한 반복 훈련 1만 시간(약 10년) + 열정에 불붙이는 계기• 핵심은 집중, 끊임없는 생각121213년 5월 14일 화
  13. 13. / 25WhatHowHow,What은 Why가 추동• 어떤 문제 : what• 어떻게 잘 : how• 그런데 왜?• goal? reason?belief?• What < How < WhyWhy-  Simon  Sinek131313년 5월 14일 화
  14. 14. / 25Why가 사람의 행위를 결정• 애플은 제품을 파는 게 아니라 자신들의 신념을 판다• 애플의 제품을 사는 사람들은 애플의 신념을공감하고 구매한다고 생각한다. -  Simon  Sinek141413년 5월 14일 화
  15. 15. / 25철학과 신념• 애플 사의 DNA 속에 기술만 있다면 충분하지않습니다. 인문학과 결혼한 기술, 인간애와 결혼한 기술, 그래서 우리 마음이 노래할 수 있는결과를 만들 수 있는 기술이 애플의 DNA입니다. -  Steve  Jobs151513년 5월 14일 화
  16. 16. / 25좋은 Software Engineer161613년 5월 14일 화
  17. 17. / 25좋은 SW 엔지니어• 논리력• 소통 능력• 학습 능력• 코딩 능력• 기업가 정신171713년 5월 14일 화
  18. 18. / 25논리력, 소통 능력• 지적 추상화 능력• 메타포 (은유) 혹은 Mental Image를 통한 사고 능력• 문제 해결 능력• 문제 인지 능력 + 문제 해결 능력• 소통 능력• 추상 수준을 조절하여 다양한 관점의 사람들과 소통하는 능력 필요• 개인의 능력이 아닌 소통을 통한 그룹의 문제 해결 능력181813년 5월 14일 화
  19. 19. / 25문제 해결 과정191913년 5월 14일 화
  20. 20. / 25학습 능력• 경험에만 의존하면 결코 성장할 수 없다.• 아키텍처는 숙련이 필요• 시스템 아키텍처를 잘 이해하는 사람들과 함께 해야 빠르고 제대로 배울 수 있다.• 학습 능력이 중요• 자존심이 너무 강하면 학습할 수 없다. 깊이에 한계가 생기고 소통 능력이 떨어지게 된다.• SW는 기술의 변화가 매우 빠르므로 평생 배우는 자세가필요.202013년 5월 14일 화
  21. 21. / 25코딩 능력• 논리적 Top-down Coding• 소설을 쓰듯 논리적으로 탑다운 코딩• 모든 논리에 검증 방법을 만들어 테스트를 작성• 코드로 생각하는 습관 : 의심이 가는, 궁금한 논리는 코드로 검증하는 습관212113년 5월 14일 화
  22. 22. / 25기업가 정신 Entrepreneurship• 스스로 기업 소유주owner의 관점에서 사물을판단하는 자세• 창업 붐이 있지만 성공하긴 매우 어렵다.• 배울 수 있을 때 배우고, 의미가 있는 기술이나 아이디어가 있을 때 창업하는 게 좋다.• 기술 회사가 아니면 기술을 배울 기회가 없다.• 학교에서 배운 것은 기업에서는 출발점.222213년 5월 14일 화
  23. 23. / 25소프트웨어 후배들에게드리는 당부232313년 5월 14일 화
  24. 24. / 25소통/성장/도전• 끊임없이 “왜”라는 질문을 던지며 생각의 수준을 높여가야한다.• 자기 머리로 이해하고 생각하지 못하면 지식 노동에서가장 단순한 반복 노동밖에 하지 못한다.• 배우는 것을, 도전하는 것을 두려워하지 말라.• 알고리즘, 자료구조 등 수학적 기반이 튼튼하면 SW 영역선택 시 큰 도움이 된다. 나머지 부분은 어느 정도 숙련과지적 추상 능력이 갖춰지면 쉽게 적응할 수 있다.• 즐거워야 한다!242413년 5월 14일 화
  25. 25. Q&A252513년 5월 14일 화

×