Thoughts of a Software Engineer