20 Years Building Software and Managing Teams
Upcoming SlideShare
Loading in...5

20 Years Building Software and Managing Teams



I've been building software professionally for 20 years. I started with ANSI C and worked with just about every technology in-between. After all of this time, I've come across a few things that have ...

I've been building software professionally for 20 years. I started with ANSI C and worked with just about every technology in-between. After all of this time, I've come across a few things that have dramatically changed how I approach software development. These are serious "ah ha" realizations; ultimate truths that have completely changed how I approach software design and define success. In this session I'm not going to talk to you about the latest and greatest technology trends or show you the latest HTML5 code library – I'm going to share with you some of my realizations and learning from over 2 decades of professionally building software and running companies and teams.



Total Views
Views on SlideShare
Embed Views



0 Embeds 0

No embeds



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment
  • This is more than just trust in personality – it should be your approach to everything. Setting expectations and not hitting them erode trustFor example, if you run an agile project and you commit to two weeks worth of work – and don’t hit it.. That’s very bad.When trust is not there.. You will find that things go badly – customers want to oversee all that you do, etc

20 Years Building Software and Managing Teams 20 Years Building Software and Managing Teams Presentation Transcript

  • Hi…My Name is Joel
  • 20 Years ….What have I learned?(crap I’m old)
  • Why am I here?
  • … because I turned 40… and that sucked
  • In the beginning…… I thought I knew it all
  • Now…… it feels like I knew nothingat all
  • I’ve done some stuff…
  • From a hick town
  • Computer Science Degree
  • Military Intelligence
  • IntraX Technologies
  • Contract Trainer
  • Independent Contractor
  • Imaginet
  • Microsoft RD/MVP
  • .NET UG
  • 4 books
  • Speaking/Lecturing
  • Telerik TeamPulse.. And now EVP of Innovation
  • ChassisFinder
  • eReferral
  • AccelleratorHK
  • NewPort Group
  • Everest a few times
  • And I think I’ve learned afew things…
  • Here are some thing I thinkare important… in no particular order
  • Success in our industrycomes from……combining knowledge oftechnology With the need ofa customer
  • Building software startswith…… a deep understanding ofthe PEOPLE using thatsoftware
  • Instead of focusing onbuilding features…… focus on allowing the userswho user your software flowthrough to the achievement oftheir goals
  • Don’t give users what theywant…… give them what they need
  • Building great software is afunction of ……How you work with othersnot how well you writecode
  • Being a successful SoftwareEngineer is really moreabout…… managing the way peoplework and interact
  • The process by which you buildamazing software is…… more important to successthan any aspect oftechnology
  • Planning is…… GuessingLearn to validate and measureinstead of guess
  • Detailed estimation ofsoftware projects is…… almost a waste of time
  • Instead of over planning andoverthinking its better to…… try, measure, adjust andtry again
  • Constraints on yoursoftware project are……WONDERFUL!!!
  • Software that is just “Goodenough”…… is fantastic
  • Being a good Software Engineer/ Craftsman means…… knowing when to maketradeoffs
  • Software architecture andmethodologies are not…… religionsThere is no right way all thetime
  • Air…… fills its container.. And sodoes work
  • Student syndrome…… does not just apply tostudents
  • Don’t confuse prioritywith…… enthusiasm
  • Ship your software…… now!
  • To grow and advance youmust……Push yourself toexhaustion, then rest andreflect
  • The most importantcommodity is….. Trust. Its something you mustearn.. And something youshould fight to keep
  • Know more than just thetrendy cool stuff…… know SQL, database tuning,design patterns, back enddevelopment, performance, knowinfrastructure and constraints
  • Agile basics…… just aren’t enough to keepthe fly wheel spinning
  • The Agile movement shouldhave started with…… Lean thinking
  • Learn to throw away…… everything you know insearch of something better
  • In the same light.. learn tobe good at…… unlearning
  • The ONLY constant in lifeand career is…… change. Embracethis, don’t fight it
  • However.. Look for thingsthat…… don’t ever change
  • Going from good to greatmeans…… sweating the small stuff
  • What’s more important thanknowledge?Passion combined with theability to learn
  • Leadership is about…… working yourself out of ajob
  • The best team is…… one that can self organize
  • High performance is about…… managing energy not yourtime
  • Interruptions …taskswitching …… death to productivity
  • Want to be supercreative, energized, focused andoperating at peak performance?Work out
  • Getting ahead in your careermeans you should…… work ON your job as muchas you work IN your job
  • Ego…… destroys teamsand then destroys thesoftware the team is building
  • Some things that will killyour projects are…SilosHandoffsLong feedback cycles
  • The most important and onlyprocess you should follow is……kaizen
  • Smart people learn fromtheir mistakes.. But…… Wise people learn fromthe mistakes of others
  • Most people are smart…… use inception to influence
  • DONE
  • Questions?
  • How to reach me• Facebook.com/joelfromcanada• Joelfromcanada.com• Twitter: JoelSemeniuk• JoelFromCanada@gmail.com
  • Good stuff• The Power of Full Engagement• Good to Great• The Logic of Life• Outliers• Peopleware• Dynamics of Software Development• The Goal