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

Well there's your problem: Misadventures in Software Consulting.

James McKee
September 28, 2017

Well there's your problem: Misadventures in Software Consulting.

Presentation for Prairie.Code() 2017

James McKee

September 28, 2017
Tweet

More Decks by James McKee

Other Decks in Technology

Transcript

  1. About Me • Network Admin from 1997-2002 • Solutions Developer

    from 2005 – 2017 • Consultant 2007 – 2017 (including 7 fortune 100, 1 fortune 500, and several recognizable non-profits) • @Punkcoder & punkcoder.com 9/29/2017 Punkcoder.com 2
  2. This talk… • I’ve been in software development since 2005,

    and employed in the technology field since 1998. • All of the names have been changed to protect the guilty, the innocent have their own vindication. www.punkcoder.com - Prairie.Code() 2017 9/29/2017 3
  3. 200 Points to anyone who can tell me what this

    is... www.punkcoder.com - Prairie.Code() 2017 9/29/2017 4
  4. How many people in this room have been in tech?

    • 1-3 Years • 4-6 Years • 7-10 Years • 10+ Years • 15+ Years • 20+ Years www.punkcoder.com - Prairie.Code() 2017 9/29/2017 5
  5. 9/29/2017 www.punkcoder.com - Prairie.Code() 2017 6 Apprenticeship • Started to

    emerge in the 13th century as a way to pass knowledge • Required to be an apprentice for 7 years (16th Century America) • Modern system has replaced apprenticeship with education. • Computer Science started in 1822… realistically in the 1960s.
  6. The Goals of this Talk • Realize that this knowledge

    based business • You have something to experience and share via your experience • The real problem with spotting a bad idea is having a large enough sample set to compare it to. • There is no substitute for mentoring and knowledge transfer. www.punkcoder.com - Prairie.Code() 2017 9/29/2017 7
  7. The most valuable thing I’ve learned as a software developer

    • THIS IS WHAT A BAD IDEA LOOKS LIKE • The real problem with spotting a bad idea is having a large enough sample set to compare it to. www.punkcoder.com - Prairie.Code() 2017 9/29/2017 8
  8. Architect Field Promotion • THE GOAL: “Our old architect said

    that the project would be done in 6 months, 3 years ago… now that he’s going to prison we want you to deliver on his promises.” • THE PROBLEM: “You probably shouldn’t make a 6 month out of college developer the team lead” • THE SOLUTION: “Preparation and Mentoring” www.punkcoder.com - Prairie.Code() 2017 9/29/2017 9
  9. ORM by Code Generation • THE GOAL: “DAL Code sucks

    and is super redundant, lets not do that anymore.” • THE PROBLEM: “You think that all of that code is the same… until you hit production.” • THE SOLUTION: “Architecture” www.punkcoder.com - Prairie.Code() 2017 9/29/2017 10
  10. Content Staging • THE GOAL: “Deployments stink… Let’s make that

    easier” • THE PROBLEM: “Databases stink” • THE SOLUTION: “None.” * www.punkcoder.com - Prairie.Code() 2017 9/29/2017 11
  11. Building the AS/400 Emulator • THE GOAL: “Lets take this

    code that the customer threw out because it wasn’t maintainable, and build an emulator on the .NET Framework so that we can sell it back to them as a solution that was better and faster than the original code.” • THE PROBLEM: “Inherently you will never make a complex system emulator that will be better than parallel hardware” • THE SOLUTION: “Somethings are better off dead” www.punkcoder.com - Prairie.Code() 2017 9/29/2017 12
  12. Sharepoint WFE • THE GOAL: “We love SharePoint and we

    know how to use it so we should make it the backend for our website.” • THE PROBLEM: “Any time you have a problem that can be solved with SharePoint means that you now have two problems.” • THE SOLUTION: “Understand what the technology does well play to its strengths, have a plan around it’s problems.” www.punkcoder.com - Prairie.Code() 2017 9/29/2017 13
  13. How to properly use FontAwesome • THE GOAL: “Lets use

    standard iconography on our site so that its more useful to our end users.” • THE PROBLEM: “Not everyone understands how web technology works” • THE SOLUTION: “TRAINING AND MENTORING” www.punkcoder.com - Prairie.Code() 2017 9/29/2017 14
  14. Search is Tough • THE GOAL: “Search stinks… Let’s make

    that easier” • THE PROBLEM: “Data stinks” • THE SOLUTION: “Fix your data” www.punkcoder.com - Prairie.Code() 2017 9/29/2017 15