Upgrade to Pro — share decks privately, control downloads, hide ads and more …

from good to great

3c568ede9e2cb4e22e25bb3362186a5c?s=47 zlu
July 05, 2016

from good to great

and having fun along the way

3c568ede9e2cb4e22e25bb3362186a5c?s=128

zlu

July 05, 2016
Tweet

Transcript

  1. from good to great and how to be happy along

    the way
  2. common questions • am i a good developer? • am

    i a developer? • how can i be better? • how can i move ahead in my career?
  3. well-rounded developer • hard-skills • operation systems, programming languages, etc.

    • soft-skills • communications, team work, etc. • path from junior to senior, covering depth and breadth
  4. depth in programming • single language • user of language

    • understand language internals and performance implications • meta-programming • runtime - dalvik machine
  5. breadth in programming • mid-level: 2 languages in the same

    family • ruby + python • senior: 2 languages in different families • ruby (OO) + haskell (FP) • architect: 2 language flavors • ruby (web) + swift (iOS)
  6. frameworks • entry-level • single language: sinatra, RoR • mid-level

    • multiple languages: flask, phoenix • senior • multiple flavors: web, mobile • architect • framework creation: from user to creator
  7. databases • relational: sqlite, postgres, mysql • nosql: mongo, redis,

    couchdb • big data: hbase, hadoop • performance • scaling • mid-level: usage of 2 types of db • senior: performance tuning • architect (dba): scaling (infrastructure)
  8. senior to architect • infrastructure • routing, proxy, load-balancing, security

    • performance monitoring, turning, system scaling • automation (devops) • end-to-end understanding (mobile to server to db)
  9. communication • mid-level: comfortable and effective with teammates • senior:

    with bosses and subordinates • architect: with other organizations, advocacy
  10. motivation • self-motivated • mid: able to interpret tasks given

    and complete independently, including effectively solicit helps as needed • senior: product analysis, planning, and estimate • architect: product inception, feasibility study, and advocacy + result
  11. agility • mid-level: change management • senior: change anticipation and

    proactive resolution • architect: data-driven decision-making process
  12. product and entrepreneurship • VP/C-level • understand product, product domain

    • transportation, fintech • industry relationship, vendor management
  13. from good to great • higher calling • human good,

    social good, purposeful life • meaningful product used by people to improve their lives • integrity being • not caving in to deadline, management pressure, and monetary incentives
  14. artisan and craftsmanship • code as poetry • programming as

    lifestyle as opposed to work • intellectual challenge (puzzle solving, strategy games) • joy of learning • efficiency-focused, problem solver, new ways to improve everyday life