Mental Tips from a Software Developer

RamblingDeveloper
6 min readOct 15, 2021

I was in two minds of writing this and as you are reading it. Decided to write it, with the hope that it would help the next person who finds themself where I was. Just for info, I’m in an alright place. The topic is reasoning with ones’ perception, mind, drive and purpose in respects to where one is going in their career. Like a lot of things this is more of a guideline or observation than a rule. I can only write from the perspective of a software developer also known as a code monkey, but I think some points could be industry agnostic.

Keep moving even if it’s a struggle

I like to believe most people get up and are looking to do some good in life. For those who don’t, please stop, life is too short for peddling unpleasantries. For those who are, keep going. It might sound crazy, but for me I knew it meant something, but I don’t know what it was. I hope most people set out a clear idea of what they want. But if you are in the “I’m unsure” camp, it’s alright. I turned out all rightish.

My advice is to put one foot in front of the other observe and repeat. In other words, do what you believe is RIGHT, carry on doing what is working and rethink things that are not doing so well. I find this would formulate the offering you must give. Notice that it’s a MUST give not optional. The devil in the detail is you are doing something in now to keep your way of life, this is what you are giving. Occasionally I would take some time out to ask “what am I doing, is it making me happy and why?”. If it’s what you want to do and you understand why, then affirm it in mind and carry on the course.

Be mindful that failure will happen. It’s normal, it’s life. It really is about what are you going to do about it? Are others tolerable about the concepts of failures? If you would like to continue being around the company of those people? Are you prepared to get up or give it another go?

For me, I like to learn, I like to work with people, I like variation and I like challenges and hopefully meeting goals. I’ve always liked to learn and found it fortunate to be in technology. The more you learn the more you can do. I’ve found it frustrating, to say the very least, working for larger organisations. Places where they pigeon hole people in a little domain and allow mid to senior managers solely to come up with a solution. I would say this works in industries that are static and none moving. i.e, construction or brick laying. I believe how to lay down a wall is well understood and won’t be changing in the near future. Technology is not that, it’s fast and it’s getting faster. The scene changes and organisations need to learn how to ride this wave. I am not advocating letting developers run riot. I am saying traditional ways of working does not lead to competitive results in software. I would like to emphasise; it was only through reflection can I see why I was unhappy. The message I want to give is don’t stop believing in what you are doing. It may get altered, you may need to do a sidestep but keep going, keep struggling, you might thrive one day.

Be careful of a bed of Vipers, CONFLICT its going to happen, watch out for its bite

Before I would understand the conflict and engage. After X number of years working, I must ask: “Is it worth the hassle?”. How would it affect me and if it was greatly then why? In short, I cared too much about engineering principles. Oh yes be careful of poisonous/toxic organisations and people. As a rule of thumb, you can see these people as they try to elevate themselves over others. I tend to see software developers pushing for an idea of Tech lead and promoting themselves as that. Its more interesting interacting with these people as often they portray themselves as an authority in the subject area. I used to see this allot with a particular colleague of the same level as I. Often I heard, at best, some truth, usually confused information and at worst lies. I personally had to digest this for some time and concluded the person I was dealing with is toxic and even questioned why the organisation tolerated, listened, and even rewarded this person. Later this person was let go. I do wonder what makes people do these kinds of things, it is a funny way to get around in life.

As for the role of tech lead. I think because the nature of technology it has changed my idea of tech lead. I see it as a role with responsibilities of keeping a loose lead on development and allows the community to give indication where they would like to go. Keeping abreast of what’s going on in the wider landscape. I would say you can study to be a good developer but you must experience what it means to lead people.

Going back to conflicts I think the phrase might be “pick your battles”. Be sure you’re in the right frame of mind and are conscience of what principle you are advocating and how far you want to go. Some battles cannot be won and often some are already resolved before they even begun.

Please do be careful, emotions may run high and often will cause adverse results. I would however, consider this your conscience telling you something, please do listen to it. So in other words after an interesting and restrained conversation. Go to a room and reason with yourself. You may find some interesting things about yourself and maybe start something

A Rolling Stone Gathers No Moss

Same kind of message as before really keep going, just know where you’re rolling to. Find a place that values what you believe in. Where you can be motivated as Dan Pinks’ theory of motivation, autonomy, mastery and purpose. Keep doing what you believe in, even if no one is looking. Thinking about it, the more sound you make in the universe someone is bound to hear something. Just make sure it’s the best kind of sound you can make.

I like to think about the dynamics of software systems and looking and writing code. At one time I was somewhat mentally down and out of work. I came to a realisation that at work it was entirely possible for toxic people to climb and make life a little harder for the rest of the people. Worst part this can even limit the scope of engineering and success of a product, something that I find enjoyable and a win-win for employee and employer or even between businesses.

Anyways I like to give an example. I had a two phone calls out of the blue from a consultancy company, first from an internal recruiter and the following from their Head of Technology. At the very least I thought these people were from some sort of cult. Super positive and valueing engineering and constructive collaboration. Like any interview they had a tech test. I overran the allotted time. It didn’t seem to matter. We had a lengthy technical talk thought it was a refreshing take on an interview. They show interest in me and talked about technologies and the limits in projects related to people, most important fact, it’s OK! Oh, sometimes technology can be an issue but often this is a small matter. It was even better to hear they see their clients as collaborators and aim as high as they can for technical excellence. The company valued grass roots input and encourage this to shape the company. I would say I think if traditional consultancies don’t adopt something like this. I can see these collaborative and open consultancies taking on more work.

Suppose my message here is. Even when your down, sometimes that noise your making will be heard, be prepared to take opportunities.

I am aware this is very lengthy. If you are to remember anything from this. Remember:

  • Do good things in life.
  • Do the thing you love to do, keep on making that sound in the universe
  • Find good people to work with.
  • Remember conflicts and setbacks will happen and it’s how you’re going to handle them.
  • The last and most important, have fun.

Thank you for reading this far, I do hope you have found it somewhat interesting.

Shameful plug

I am working under my own steam now, if you need Technical Solutions please drop a line

www.mkdirdev.co.uk

--

--