2. CONTENTS
• MOTIVATION FOR PRESENTATION
• WHAT DO YOU WANT TO BE WHEN YOU GROW UP?
• STORY OF MY CAREER
• OTHER CAREER CASE STUDIES
• WHAT IS CODE?
• TYPICAL WORK WEEK OF AN ENGINEER
• IT’S ALL ABOUT THE PEOPLE!
• CONCLUSION: MAKE A DIFFERENCE
3. MOTIVATION FOR PRESENTATION
• EXPOSE DAY-TO-DAY LIVE OF A SOFTWARE ENGINEER
• SHOW A FEW PATHS TO START INTO THIS BUSINESS
• SHOW THE IMPORTANCE OF HUMAN RELATIONSHIPS IN THIS PROFESSION
• SHOW WHERE BEING CHRISTIAN MAKES A DIFFERENCE
4. WHAT DO YOU WANT TO BE WHEN YOU
GROW UP?• ABOUT ALEX TODAY:
• BILINGUAL MANAGER, PLATFORM TOOLS TEAM
• WORKING FOR NINTENDO OF AMERICA
• MORE THAN 20 YEARS OF EXPERIENCE IN THE FIELD
• BORN INTO A CHRISTIAN HOME (INTRODUCED TO CHRISTIANITY AT AN EARLY AGE)
• ALEX, AT AGE 4
• WANTED TO WORK COLLECTING GARBAGE
• ALEX, AGE 14
• WANTED TO JOIN THE ARMY
• ALEX, AGE 15
• FELL IN LOVE WITH COMPUTERS. DROPPED OUT OF KARATE TO STAY IN THE LAB.
• KEY POINT:
• HAVE A PLAN.
• BUT WATCH FOR ACTIVITIES THAT STIR YOUR PASSION – COLOSSIANS 3:23
5. CAREER TURNING POINTS
• 1990: FINISHED TECHNICAL HIGH SCHOOL
• 1990: STARTED FIRST PROGRAMMING JOB – DATABASE PROGRAMMING
• 1992: STARTED UNIVERSITY (WHILE WORKING)
• 1996: STARTED MASTER’S DEGREE (STILL WORKING)
• 1998: MOVED TO U.S.A.. STARTED WORK WITH TELECOMMUNICATION (AS A CONTRACTOR)
• 2001: HIRED FULL TIME BY LUCENT TECHNOLOGIES (IPHONE VOICEMAIL STILL USES PROGRAMS I WROTE)
• 2003: HIRED BY MICROSOFT. STILL TELECOMMUNICATION WORK
• 2006: BACK TO SCHOOL: EMBEDDED SOFTWARE DEGREE AT U.W.
• 2006: WITHIN MICROSOFT: STARTED EMBEDDED SOFTWARE WORK
• 2011: THREE MONTHS SPENT IN JAPAN TO STUDY JAPANESE
• 2011: STARTED AT NINTENDO, AS A LEAD
• KEY POINT: PUT YOUR STRENGTH INTO LEARNING. IT PAYS OFF.
• PHILIPPIANS 4:13: STRENGTH COMES FROM GOD
6. OTHER CAREER CASE STUDIES
• MANAGING YOUNGER ENGINEERS, I CAN OFTEN “SMELL” PROMISING UP-AND-COMERS;
• A FEW CASES HERE FOR REFERENCE:
• MR. A:
• GRADUATE FROM RENOWNED UNIVERSITY
• BIG FOOTBALL FAN
• LOTS OF ENERGY
• VERY GOOD AT EXPLAINING HIS IDEAS – A GREAT “PEOPLE PERSON”
• MR. B:
• GRADUATE FROM TECHNICAL COLLEGE
• DOES COMPUTER PROGRAMMING AS A HOBBY (I DID TOO – DROPPED KARATE!)
• VERY CAPABLE
• OVERCONFIDENT
• MS. C:
• GRADUATE FROM MAJOR UNIVERSITY
• VERY CAPABLE
• VERY HUMBLE
• POINTS IN COMMON: GOOD BALANCE OF NATURAL ABILITY & EFFORT;
• SOFTWARE ENGINEERS ARE A VERY DIVERSE CROWD!
• DIFFERENT PERSONALITIES ACTUALLY HELP TEAMWORK.
7. WHAT IS CODE?
• SOFTWARE (ALSO CALLED CODE) IS SIMILAR TO A LONG RECIPE
• EXCEPT WITH CONDITIONALS:
• E.G.: IF THE TOMATOES ARE RIPE, BAKE WITH OVEN SET TO 300F. OTHERWISE, BAKE WITH
OVEN SET TO 350F.
• AND LOOPS
• E.G.: ADD ONE TEASPOON OF SUGAR AT A TIME, UNTIL IT TASTES GOOD
• CODE HAS TWO FACES:
• HUMAN FACE: WORDS AND NUMBERS. WE OFTEN SEE THAT IN MOVIES; TECHNICALLY,
WE CALL THAT “SOURCE CODE”
• COMPUTER FACE: ONES AND ZEROES. THAT’S WHAT THE COMPUTER UNDERSTANDS.
TECHNICALLY, WE CALL THAT “OBJECT CODE”, OR “EXECUTABLE CODE”.
• TRANSLATION IS CALLED “COMPILATION”
Sourc
e
code
compilation
1011
0010
1101
101
8. TYPICAL WORK WEEK OF SOFTWARE
ENGINEER
• UNDERSTAND REQUIREMENTS
• TALK TO OTHERS, DIVIDE THE WORK SO YOU GRAB YOUR PIECE OF THE WORK
• ACT QUICK, SO YOU GET THE MOST INTERESTING PIECE!
• CREATE DESIGNS (“CREATE DREAMS”): EXPLAIN TO PEOPLE WHAT YOU WILL
BUILD, HOW YOU WILL BUILD IT
• FIND YOUR TOOLS
• MAKE SOME TOOLS OF YOUR OWN
• WRITE CODE
• EXPLAIN WHAT YOU HAVE DONE
• DEAL WITH “BUGS”
9. A “BUG” ??
• THE WORD “BUG” HAS IS USED TO DESCRIBE
ENGINEERING ERRORS
• IT WAS USED BEFORE COMPUTERS:
• THOMAS EDISON WROTE IN 1878 ABOUT
THE ENGINEERING PROCESS (SUMMARY
MINE):
1) AN IDEA COMES (INTUITION)
2) A BURST OF REWARDING HARD WORK
3) “BUGS” ARISE (DIFFICULTIES)
4) MORE HARD WORK IS NEEDED TO FIX THE
BUGS
• IN 1947, A REAL “BUG” CREPT INTO A
COMPUTER (HARVARD MARK II)
10. TYPICAL WORK WEEK OF SOFTWARE
ENGINEER (CONT’D)
• EXPLAIN WHAT YOU HAVE DONE:
• EXPLAIN TO ENGINEERING TEAM MATES HOW TO USE YOUR SOFTWARE
• EXPLAIN TO TEST TEAM HOW TO USE YOUR SOFTWARE
• HELP THE CUSTOMER SUPPORT TEAM UNDERSTAND YOUR SOFTWARE
• DEAL WITH BUGS:
• FIND & FIX BUGS IN NEW CODE
• FIND & FIX BUGS IN OLD CODE (OFTEN CODE WRITTEN BY OTHERS)
• EXPLAIN YOUR FIXES TO MANY PEOPLE
11. IT’S ALL ABOUT THE PEOPLE!
• AS AN ENGINEER, YOU TALK CONSTANTLY TO:
• YOUR BOSS
• YOUR TEAM MATES
• THE TESTER TEAM (THEY ARE YOUR INTERNAL CUSTOMERS)
• OTHER ENGINEERING TEAMS
• PROGRAM MANAGERS
• EXTERNAL CUSTOMERS
• POINT: YOUR ABILITY TO INTERACT WITH PEOPLE IS KEY
• LISTEN CAREFULLY TO OTHER’S INPUT
• EXPLAIN YOUR IDEAS CONCISELY
• DEFEND YOUR IDEAS WITHOUT ATTACKING PEOPLE
• BE KIND EVEN WHEN “YOU’RE RIGHT AND THEY ARE WRONG”
• TRY TO UNDERSTAND PEOPLE’S MOTIVATIONS AND REASONS
• ABOVE ALL: BE TRUTHFUL AND FORTHCOMING!
• LUKE 6:31: TREAT OTHERS AS YOU WOULD LIKE TO BE TREATED!
12. CONCLUSION: MAKE A DIFFERENCE
• IT’S CRITICAL TO BE NICE
• IT’S NICE TO BE SMART
• BUT THERE’S A “SOMETHING ELSE” THAT MAKES YOU STAND OUT:
• MOTIVATE OTHERS TO DO THEIR BEST
• BE ALWAYS WILLING TO LEARN FROM OTHERS (PROVERBS 9:9 & 9:10)
• BE ALWAYS WILLING TO TEACH
• BE A TEAM PLAYER (WE ALL WIN WHEN THE TEAM WINS)
• BE GENUINELY HAPPY FOR OTHER’S SUCCESS
• DO YOUR WORK WITH GENUINE JOY
• THESE TRAITS ARE USEFUL EVERYWHERE – NOT JUST IN THE SOFTWARE BUSINESS
13. A FEW ADVANCED TERMS AND EXPRESIONS
• MAKE A DIFFERENCE: TO HAVE A EFFECT. TO DO SOMETHING IMPORTANT:
• PASSION: DESIRE TO DO SOMETHING OUT OF LOVE. NOT FOR MONEY.
EXAMPLE: HUMANITARIAN DOCTORS.
• HUMBLE: PERSON WHO DOES NOT THINK TOO HIGHLY ABOUT
HIM/HERSELF.
• OVERCONFIDENT: THE OPPOSITE OF HUMBLE
• REQUIREMENTS: IN SOFTWARE, IT MEANS A CONDITION THAT THE
PRODUCT MUST SATISFY. EX.: IN A CALCULATOR PROGRAM, DOING
ADDITION, SUBTRACTION, MULTIPLICATION AND DIVISION ARE
REQUIREMENTS.
• BURST: AN EXPLOSION. IN THE PRESENTATION, A “BURST OF HARDWORK”
MEANS: MANY DAYS IN A ROW, WORKING MANY HOURS EVERY DAY.
• GENUINELY: SINCERELY
14. BIBLE REFERENCES
• ABOUT PASSION FOR WORK: COLOSSIANS 3:23:
“WHATEVER YOU DO, WORK AT IT WITH ALL YOUR HEART, AS WORKING FOR THE
LORD, NOT FOR HUMAN MASTERS”
• ABOUT USING YOUR STRENGTH FOR LEARNING: PHILIPPIANS 4:13
“I CAN DO ALL THIS THROUGH HIM WHO GIVES ME STRENGTH
• TREATING OTHERS AS YOU WOULD LIKE TO BE TREATED: LUKE 6:31:
“DO TO OTHERS AS YOU WOULD HAVE THEM DO TO YOU”
• ABOUT BEING NICE, EVEN TO PEOPLE WHO ARE NOT NICE TO YOU: MATTHEW
5:39:
“BUT I TELL YOU, DO NOT RESIST AN EVIL PERSON. IF ANYONE SLAPS YOU ON THE
RIGHT CHEEK, TURN TO THEM THE OTHER CHEEK ALSO”
• ABOUT LEARNING: PROVERBS 9:9-10
“INSTRUCT THE WISE AND THEY WILL BE WISER STILL; TEACH THE RIGHTEOUS AND
THEY WILL ADD TO THEIR LEARNING. THE FEAR OF THE LORD IS THE BEGINNING OF
WISDOM, AND KNOWLEDGE OF THE HOLY ONE IS UNDERSTANDING”
15. CULTURAL REFERENCE
• YODA: THE WISE, OLD TEACHER IN THE “STAR WARS”
MOVIES.
• LUKE SKYWALKER: YODA’S VERY POWERFUL PUPIL, THE MAIN
HERO OF “STAR WARS”.
• IN THE PRESENTATION, ALEX SAID AS A JOKE “I SMELL A LUKE
SKYWALKER HERE, ANOTHER ONE THERE”, REERRING TO HOW
HE SEES TALENT IN YOUNG ENGINEERS (MR. A, MR. B, MS. C)