Fifth Week in the Office (28/03/2022 - 01/04/2022)

Fifth Week in the Office (28/03/2022 - 01/04/2022)

ยท

8 min read

This week was all about getting to grips with Drupal 9 administration back-end interface and finally returning some value to the team in terms of ticket resolution. But first, I'd like to discuss my first sprint planning meeting.

2-week Sprints ๐Ÿƒ๐Ÿฝโ€โ™‚๏ธ

As mentioned in the post about Spotify and our work culture comparison, we do employ some agile principles and scrum framework. Our sprint planning tends to focus on big ticket items that are higher priority to the content creator and management teams. This makes sense as some of those teams interface with clients and sponsors so it is important that we as a team are putting their requests at the top of the list if we want to facilitate investment. We would however like to switch to theme based sprints with the idea that we focus on an area where we have neglected or the internal knowledge base is weak. This gives us an excuse to research and plan on that aspect so that we learn as a team and provide value back to the company by resolving these types of issues.

In a stricter sense, some companies that are providing SaaS for example may determine which tickets to take from the backlog into each sprint with user stories:

"I am customer X and...
... I would like to do Y with the website....
...so that I can achieve Z".

Along these lines, it could be possible to determine which user stories are more significant to the organisations's product requirements. The tough part then becomes assigning an arbitrary point number or weighting to that case, in consideration of the history of how the current development team have managed similar stories and those corresponding points allocation.

An example of a teams "average" points per sprint could be viewed as:

(No. of team members x no. of working days x arbitrary point allocation per dev x no. of weeks in the sprint) = Number of points that a team can consume in a sprint

There are some big caveats to this:

  1. The whole points system is an estimate at best (especially so on the first sprint) and all parties involved should be aware of that. Especially, do not fall into the misconception that points can be translated into number of hours worked (utilisation) which is a common key performance indicator that managers are used to. Reassess and recalculate after several sprints as the development team work out their teething issues and knowledge gaps are plugged.
  2. There needs to be consideration of loss time through worker illness or absence etc. and whether the team is robust enough to balance these losses.
  3. There will naturally be a skills and knowledge gap between senior and junior developers and there is no magic cure for this. Apply time, practice, patience and determination. Rinse and repeat.
  4. The 'arbitrary point allocation per dev' e.g. 1 / 3 / 5 / 8 point(s) is perhaps the most difficult variable to assign. Start off conservative and reassess after several sprints as the development team find their footing.

Our issue currently, is that with two new members who are also new to the web development sphere, will need more time to get proficient with the tech stack just so that run-of-the-mill tickets can be handled with little or no intervention from existing, more experienced staff. This is no easy feat and this can quickly rule a new starter out of supporting on more complex issues that require out-of-the-box thinking.

Over time, we shall see whether we put too much on our plates and therefore need to reconsider our total points (or even number of tickets we can comfortably manage) per sprint. We use a ticketing Kanban-style board to display the issues that were assigned subdivided per team (so we can see which team is giving out a lot of work!) and even a heading for unplanned activities. Throughout the sprint, we are keeping in close communication via the ticketing board and chat comms for discussions and meetings to get issues resolved and code changes into production.

Apprenticeship Training ๐Ÿ‹๐Ÿฝ

What's great about this role is that there is work-time allocated to training that supports my technical knowledge and professional skills in the workplace. The employer and training organisation have secured one-to-one, weekly evening sessions with a Drupal experienced developer. Suffice to say, we are getting a lot of effective learning resources to eventually become proficient with the CMS.

I have been progressing on an online course that has introduced me to Drupal 9 admin site navigation and looking forward to completing that. All the while, I have been continuing on alternative online learning through CodeCademy so that my coding skills do not get rusty.

Professional Management: Emotional Intelligence in the workplace โ™ฅ๏ธ

The apprenticeship course also provides soft skills management because historically, it would receive young applicants who may not have worked in a professional setting before, or had much formal education. So, these behavioural skills may not have been developed.

We had a session on emotional self-awareness, management and empathy and it was surprising how many misconceptions I personally had around the subject and how that manifests in communication with team members.

Some of the key findings for me were:

  • The panacea for physical health treatment is through attending to a trained, experienced medical professional or drawing on your own training to administer treatment e.g. apply a band-aid from a first aid kit. The presenter proved this through numerous case studies, even children are subconsciously aware of this. What was surprising was that psychological or mental health problems are downplayed in terms of their severity and perhaps that is why they are so common and difficult to treat with counselling and unfortunately, we see these illnesses actually being 'treated' with medication which is rarely the root of the problem. As a society, we need to promote mental health to the same level of importance as physical health.
  • When we experience failure or rejection, it is natural to jump to conclusions. Concentrate on the facts only (cognitive reappraisal). Accept the event was a failure, not that you are the failure. Ask yourself, what actions are you going to take to learn from the mistakes and move on?
  • Practice positive emotional hygiene habits: social interaction to combat loneliness; break negative cycle of failure by preventing feeling of lack of self-worth through promotion of self-belief (trust yourself to give the best of your ability); control emotional bleeding by reviving self-esteem after an experience of failure and rejection; block out rumination which is the unhealthy process of playing negative scenarios over and over again by distracting yourself with positive activities (exercise) and positive thoughts (deep breathing, meditation with focus on 'anchor point').
  • Mindfulness was discussed and how it ties in to different levels of listening. Mindfulness concerns moment-to-moment awareness of what's going on around you (all senses) without judgement. This is key here, as I come to find that within a workplace, I am actually applying attentive listening rather than empathetic listening.
  • Attentive listening is loosely translated as taking on board most of what the person has to say, agreeing or questioning their statements using body language e.g. nodding ones head, as a positive feedback loop to prove to the speaker that you are engaging with them. Unfortunately, this can derail the conversation somewhat as the listener no longer is listening rather, they are subconsciously imagining themselves in the speakers shoes and adding their own opinion. In this situation, one should be emotionally sensitive to the conversation by only replying to them with questions that do not pass judgement. This will allow the speaker to air their grievances on their terms, hopefully allowing them to come to terms with the problem, what the facts, how to address the issue and move on emotionally.

For our industry, certainly these are lessons we need to be mindful of. I couldn't compare the mental toll of working in development to say, that of public services or armed forces. But, having this session made me more aware of how I engage in work-based conversations with colleagues. Throughout my career and development, I am going to face adversity so being at peace with that and really being self-aware helps when deal with those inevitable uncomfortable times.

I think as a developer, it's easy to be less emotionally self-aware and that's not the fault of the developer. To be successful, you have to train your brain to be imperative, calculating, literal. This is how the computer responds to anyone trying to get something to work with it: black and white, certainly no grey areas. So, it's no surprise that this can manifest in conversation as being blunt, or short, or even downright rude behaviour. Coders are problem solvers so naturally when faced with a problem, even an abstract, social friend or family issue, the knee-jerk reaction is to process it through a conditional, document the output, perhaps even conduct with some unit testing.

function handleEmotion($yourProblem) {
    if ($yourProblem === "Midlife Crisis") {
    echo "I agree, you need help. I know what you are going through. Have you been to see a doctor?\n";
    echo "Based on the feedback you received, how would you rate my attentive listening?\n";
} elseif ($yourProblem === "Work-based Issue") {
    echo "I see. Tell me more. How does the situation make you feel? And, what do you think the best course of action is for resolution?\n";
    echo "Based on the feedback you received, how would you rate my empathetic listening?\n";
} else {
    echo "Sorry, I do not know. May I suggest a qualified mental health coach?";
}
}

handleEmotion("Midlife Crisis");
handleEmotion("Work-based Issue");
handleEmotion("Personal problem");

This is obviously tongue-in-cheek, but it would be beneficial moving forward with the training, to train more soft skills development as you learn how to manage conversations and egos in the workplace.

dog therapy meme

ย