Saturday, February 16, 2008

Job Conclusion

fetch>UID>.jpg
After starting a new job two weeks ago, I try to draw a conclusion of the insights I think I gained during the last year.
The following may sound patronising, but it is not intended that way. It is just an attempt of self-reflection, and I am aware, that I could hardly practice what I preach ...

Process:
  • Never do anything without a specification.
  • Defining SMART objectives is most important.
  • Don't be afraid of the 3Cs: Command-Control-Correct! This constant iteration is constructive and imperative to be productive! This has nothing to do with repression or dictatorship. [Actually having a manager that has done some additional military service can be beneficial here ;-)] As a developer it is very important that you know that your work is relevant and somebody cares!
  • Some kind of conceptual modal/ubiquitous language of the business problem is very important. It has to be documented somehow and become common knowledge of all involved team members (including stake holders).
  • Watch out for the danger of retrofitting the conceptual model after an existing implementation ... Tell don't Ask has meaning on all levels...
  • My understanding of production-ready quality has been utterly overhauled.
  • If you are working in a team, Sharpening the Saw and Filling Gopher Holes cannot be a One Man Show.
  • Bringing Testing into a big existing project is very difficult.
  • Producing more code is not necessarily a sign of progress.

  • Technology:
  • Design for testability IS important.
  • My dislike for code-generation has increased.
  • A layered architecture is just a millstone around your neck if it is not intended for decoupling different concerns.
  • Working with bitemporal data increases complexity by an order of magnitude.
  • Do not underestimate data migrations!

  • Personal:
  • I want to sharpen my saw.
  • I want to work smart, not hard. I want to make a difference. I want to be able to identify with what I am delivering.
  • Salary is not the most important aspect of a job. - This is no longer an empty phrase for me.
  • Working in a good team is bliss - you only can really value that if you have seen both ends of the scale.
  • It is very hard to work in an environment, where the majority of people does not share your mindset concerning important work related topics.
  • My trust into the sentence "This should not be a problem." has asymptotically reached zero.
  • The sentence "I fix it when I see it!" from a member of my management triggers the immediate urge to run to the nearest exit.
  • I want to read Death March.
  • 1 comment:

    1. "Working in a good team is bliss - you only can really value that if you have seen both ends of the scale."

      This is so true.

      Coincidentally I'm changing jobs in 3 weeks too. And I'm leaving the best team behind I ever had as a team manager.

      Stephan

      --
      Programming is hard - http://blog.codemonkeyism.com
      http://twitter.com/codemonkeyism

      ReplyDelete

    Related Posts Plugin for WordPress, Blogger...