Lately, I came across an old presentation of Adam Bien about Vernunft-Driven-Design (in English: Rationality- or Reason-Driven-Design). I generally like the mindset of Adam Bien and I found it particularly interesting that he talks about non-technical stuff in this video. The part I liked the best was a listing about how to be successful in software development project as a developer:
The talk is in German, but slides in English.
Fortunately, the talk is based on some blog post of him. Enjoy reading!
By coincident, I came across an updated version of the talk. Unfortunately, there is only the description available (http://www.berlin-dose.de/vernunft-driven-design/). I found the following statement very interesting (translated by me):
Good software can only be implemented by passionated inhouse developers. The more complex the software is the more expensive will be the attempt of any’externalization’.
That makes sense because complex business domains lead to complex software systems (and that’s ok, because it’s the essential complexity of the things in “reality” we try to (en-)code) that requires a deep understanding of the domain. So developers have to be very motivated to deep dive into the domains to learn all the corner cases. This learning process occurs in the daily coding business. The knowledge will be gathered in the brains of the developers. If they are external, the knowledge about the software and the details about your business domains leave with the external developers at the end of the project (and thus the company).