Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

CTO School Meetup - Jan 2013 Becoming Better Technical Leader


Published on

Slides used at CTO School ( meeting on January 2013.

Published in: Technology

CTO School Meetup - Jan 2013 Becoming Better Technical Leader

  1. 1. CTO School MeetupJanuary 2013 Becoming a Better Technical Leader by Jean Barmash
  2. 2. Agenda• Role of the CTO / VPE / Tech Lead• Three Skill Areas  Technical  Process  Managerial
  3. 3. About Me:• CTO / Head of Product / Only Developer @ 5 OClock Records – Service for Doctors & Hospitals to manage medical records requests – Technology: Ruby on Rails / Heroku/ PostgreSQL• Previously:  – Technical Consulting - many projects, technologies, and business needs. – Managed teams up to 20 people – Trainer / Teacher – Software Architect – Developer on a Product Team – Public Speaker & Writer – Project & Product Management
  4. 4. CTO vs. VP EngSupport the business strategy of your business by formulating and executing technical strategy. CTO  - Technical Vision• “Great CTO’s usually can’t manage their way out of a paper bag, but have huge vision, the ability to pull an all-nighter and crank out a rough prototype of the thing they are thinking about, have the unique ability to translate complex / abstract thoughts into simple English that a non-technical end- user can understand, and a willingness (or even desire) to get up in front of 1,000 people and talk about the latest greatest thing they are working on / thinking about. They are also perfectly happy to work collaboratively with the VP Eng while leaving the engineering team completely alone” • VP Engineering – Technical Execution • Process / management gods and goddesses – totally focused on building and shipping products. Most of them are “medium technical” – strong enough to stand up to the engineers they manage, but not necessarily the best coders on the team. A few were rock star developers; a few were non-programmers (i.e. “anymore”) • Source: Brad Feld
  5. 5. •
  6. 6. CTO Role in DifferentOrganizationsInfrastructure Manager – IT in a support function• External Facing Technologist – Technology is used to provide products & services to customers / partners – Customer-Focused Technologist – Market research & key customer focus• Big Thinker – Evaluate how technology can be used to create new business models / products – Advanced technology, competitive assessments, prototyping
  7. 7. CTO Focus as Company Grows
  8. 8. Technical Role, But!• Responsible for success of the company, not just technology – Strategy, Technical & Business – Participate in Sales – Partnership Discussions – Fund Raising – Build vs. Buy Decisions
  9. 9. General Leveling Up• Build a network. Learn from others• Self-assessment. Do you have any significant flaws?• Have somebody more senior assess you• Any gaps that are relevant to your company?• Mitigate knowledge gaps• Get involved in community• Get mentors / advisors• Performance is a discussion with co-workers
  10. 10. Three Key Skill Areas• Technical• Process / Operational• Leadership / Management / Executive• Note – at CTO School Meetup, we strive to balance these out over time.
  11. 11. 1. Technical Skills• T-Shaped ● Broad in many areas, and ● Deep in a few• Expert-Level - Deep –CS 101 – Data Structures, Algorithms –Chosen field of technology (Ruby, .NET, Java, Python, PHP, JavaScript) –OO / Functional Design –UI Technologies (HTML, CSS, Ajax Libraries) –Design & Software Architecture•
  12. 12. 1. Technical Skills - BroadSecurityPersistence OptionsCloud Architectures / HostingScalabilityCode QualityIntegration Options & ArchitecturesInfrastructure & Systems OperationsEtc.
  13. 13. Even More Broad• UX & Usability• Design• Product Marketing• Metrics• System Administration• Other subject areas, i.e. marketing, sales, finance, etc.
  14. 14. Special Tech Skills• Enterprise Architecture• Facebook, Web, Mobile Platforms• Payments / Subscriptions Technologies• Content Management• SEO• Ad Platforms• Special Algorithms & Technologies• Hardware
  15. 15. Self Assessment• What key technology areas are you good at?• What are you OK at?• What do you not know that is a potential liability?  Want to have good working understanding of key areas, such as performance, scaling, monitoring, infrastructure, security, maintainability.• What technologies have relevance to what you do?
  16. 16. How do you improve?• Do you know how you learn best?• Read a lot, experiment• Prototypes, Spikes• Meetups, Conferences (attend, speak, or volunteer)• Contribute to Open Source, Blog• Get a brain trust group going, esp similar technologies• Get a Technical Advisor or Mentor• If you manage a team, you can focus learning as a team by assigning research topics to your reports.• Personal technology radar (• Make a plan for things you should learn over the next six months•
  17. 17. Some Resources - Books•• Pragmatic Programmer• Solving Enterprise Applications Performance Puzzles: Queuing Models to the Rescue• SOA with REST: Principles, Patterns & Constraints for Building Enterprise Solutions with REST by Thomas Erl• Seven language in seven weeks• Seven databases in seven weeks• The Art of Scalability by Martin L Abbott and Michael T Fisher• Enterprise Software Delivery by Alan W. Brown• Scalable Internet Architecture by Theo Schlossangle• Managing Software Debt by Chris Sterling• The Datacenter as a Computer by Luiz Barroso and Urs Holzle (available online for free)
  18. 18. 2. Process Skills• Software Development Life Cycle• Agile, Kanban, Lean, Scrum• Source Control & Build Tools• Issue Tracking• Quality Assurance• Security Processes• Project Management• Estimation• Usability / UX• Product Management
  19. 19. Improving Process SkillsThis is where interacting with other peoplebecomes hugely important• Agile Meetups / Conferences• Certifications (i.e. Scrum)• Continuing Education Courses (i.e. Project Management)• Self-learning - books (“Code Complete”), Podcasts• Have you been part of a full SDLC?• Experiment & Learn
  20. 20. Process Changes with Team SizeAs team size or composition changes, theprocess will change correspondingly.Detecting inflection points when a process thatworked before stops working is very important.Its always a balancing act.
  21. 21. Resources - David AndersonPrinciples of Product development flow - Don ReinertsenContinuous Delivery by Jez Humble and Dave FarleyExtreme ProgrammingThe GoalArticle:Facebook Release Process Http://Www.Businessweek.Com/Articles/2012-10-04/Facebook-The-Making-Of-1-Billion-UsersThe lean startup - Eric RiesRunning Lean - Ash MauryaAgile Estimating & Planning by Mike CohnProduct Strategy for High Technology Companies by Michael E McgrathInspired by Marty CaganAgile Software Requirements by Dean LeffingwellSoftware Product Management and Pricing by Hans-Bernd Kittlaus and Peter N CloughSubject to Change by Peter Merholz and Brandon SchauerRelease It! Design and Deploy Production-Ready Software by Michael T NygardGrowing Software by Louis Testa
  22. 22. 3. Leadership / Management Skills• Depend on Company Stage / Size – Lead Through Doing / Example – Lead Through Others – Lead By Vision• Setting Technical Direction• Recruiting & Growing Teams• Managing People, including Remote• Mentoring & Growing People• Motivating• Public Speaking• Writing
  23. 23. Your role• Your role becomes supporting, mentoring• The job is to make sure the team is effective, and to remove roadblocks to productivity• Have a relationship with your report, know what they care about, where they want to go• Help them grow into where they want to go.• A lot of it has to do with focus, but there are specific techniques and skills you need to develop
  24. 24. Being Part of Executive Team• Think in terms of the company, not technology• Offer Technical Options• Resource Planning• Educate the other executives about technology capabilities, processes, etc.• Input on short and long-term business vision, strategies and plans;• Help define business priorities
  25. 25. Improving as Manager• Focus starts shifting on people skills and emotional intelligence• Your concern is the team, and growing individuals• Can you leave for a week without major disruption?
  26. 26. How do you grow your people? Is your team good enough to function without you? Have a growth plan for everybody (even if informal) Setup internal mentoring program Code reviews – great way to pass on technology knowledge.
  27. 27. Improving as a Leader• Non-technical skills become more and more important  Communication  Mentoring  Networking  Emotional Intelligence  Persuasion  Motivation  Public Speaking  Writing
  28. 28. Resources•  Various classes that improve Emotional Intelligence• Center for Creative Leadership • Manager Tools Podcast  • Joel Spolsky – 3 Management Methods  html
  29. 29. Resources - BooksManaging HumansThe Mythical man month" is a must read - if only for historical contextPresentation Zen Design by Garr ReynoldsCulture -* Managing Humans* Mythical Man-Month* Leading Lean Software Development* Peopleware: productive projects and teams* Why Managing Sucks and How to Fix it patternsManagement 3.0 - - Http://Www.Joelonsoftware.Com/Articles/GuerrillaInterviewing3.HtmlBook - 5 Dysfunctions of a TeamREWORK -
  30. 30. More on Executive Skills• Review and influence the product road map,• Review / provide input on some investor presentation materials, business proposals• Participate in new business, partnership or investor meetings on a limited basis,• Business practices that will help to derive greatest short-term and long-term value from the technical team and other resources.• role-in-start-up.html
  31. 31. Skills Conclusion• Make a plan for your own growth, esp important to you and your company  Start with whats both important to you and to your company• Different priorities compete with each other. – ALL are important – Difficult to make short-term vs. long-term tradeoffs – Effective Time Management is essential• Make sure you know what’s most important for you right now
  32. 32. Resources•••••••••••••••••