The Software Engineer's Social Contract
Posted on October 28, 2018
This is going to be an ongoing bullet point of some of my own personal guidelines as a Software Engineer. They probably relate to most other, if not all, professions and occupations. Each point has a bit of justification and reasoning behind it. This list may grow.
- Take advice-giving seriously and explain it well
- Justification & Reasoning: I've advised my younger brother concerning his degree program, and soon I'll be advising an Honors program student at my alma mater, Clarkson University. I don't take this lightly, because if someone comes asking for advice, they will probably take action on whatever you say. So you're literally steering their path through life. Try to notice anything you say that sounds clichés and concretely state that, but being serious in your advice. I say this because whenever I received advice from elders or role models, it often sounded cliché, and then I went off and ignored the advice to do my own thing, only to find that the advice given was actually quite accurate and would have been quite helpful.
- Don't give specific advice on large life decisions (getting married, buying a house/apartment, etc.) to someone if it is not asked!
- Justification & Reasoning: This isn't implied to be mean or ignorant of others. I think struggle and doing things "not the perfect way" is a part of being human and what teaches us good strategies. To me these struggles and internal battles are also important for an individual to have, that could may well have been avoided with the proper part of self development. This was a big issue at my previous employer. It seems everyone had a plan for me - when they forgot to realize I was the one working there! It's not their decision! I'm the employee. Yes, I understand they may have been "looking out for me", but when multiple coworkers say to me "oh, we were think you would stay at least XYZ years longer, you should have done XYZ, that's how you can get better at XYZ". Yes, that's great, but I'm not your resource! I'm an individual! I need to make my own decisions about where I work! Sheesh.
- As the working software engineer with significant income, always buy beers for the bachelor students at bars, parties and similar (this includes trainees, apprentices, etc.).
- Justification & Reasoning: it was always the case that older people while I was growing and learning and its only correct to do the same and keep the cycle going. This may seem like a stupid point, but from the networking and social aspect, it is very, very important.