Seeking Diversity, Equity & Inclusion (DEI)

I’ve said in previous blogs that our head office is located next to a city with a high Asian population, so therefore we employ a disproportionate amount of Asians. There tends to be a lack of women applying to be software developers but we employ a lot of women testers, and managers.

A few years ago, we started some “working groups” with a woke agenda. We had one specifically for women, then for ethnic minorities, and then one for people of different sexualities.

I have no idea how many meetings were arranged or what came out of it, but then their groups were all merged under the umbrella of DEI (Diversity, Equity & Inclusion).

I’ve always said I am fine with these groups as long as they are solving a problem. But what problem are they trying to solve? We don’t have any relevant problems as far as I am aware, but then often forming these groups and pursuing agendas causes the issues they claim to solve. 

I remember someone made a point about not talking about politics, religion or sexuality at work because it can cause arguments, make people feel excluded or bullied. You mainly go to work to do your job, not discuss your private life, so I think this unwritten rule has mainly been abided by. 

Now with this modern woke movement, people are being told that we need “diverse opinions” from “diverse backgrounds“. However, if you do attempt to talk about these topics, you soon find out that it’s completely the opposite mentality, and you actually need to align with the group-think. Political opinions are fine as long as it aligns with the left-wing. Talking about religion is great as long as it’s not the negative aspects of it, and talking about sexuality at work is normal now.

What happens if you just want to write some software?

Pride meeting

During Pride month, we had a meeting with a guest external speaker. Presumably paid them a lot of money to talk about their identity and sexuality at work; which is incredibly weird.

“Conforming means compromising your own identity.”

You could argue having to go to work “compromises your identity”. In a work situation, what part of your sexuality is required to be known? Why is gender really relevant?

The speaker was talking about being bisexual, gender-fluid and polyamorous. Do we need to know this? Did that ever impact her career? People like that seem to imply that you need to be different to stand out.

At the end of the month, a Director sent out a message:

Special thank you to all our colleagues in the LGBTQ+ community across our organisation. We are truly thankful for the talent and value that you bring to us every day. We Belong! 

Imagine the outrage if they only praised straight colleagues. Targeting a group of people implies that the people outside that group are excluded and don’t bring value. If we really are equal then you don’t single groups out like that. A similar commendation was given during Black History Month.

Representatives

So they were looking to appoint some DEI Representatives to bolster their working groups:

“Our mission is to be a company that welcomes diversity amongst our workforce and provides

opportunities for everyone to be themselves and thrive at work.”

“The role involves identifying new and creative ways to raise awareness of key DEI topics and break down barriers through sharing educational content, organising webinars or other events and sharing experiences for others to learn from, helping us to become a more equitable, diverse and inclusive workplace.”

7 people volunteered: 1 Indian, 6 white. 5 women, 2 men

I would have thought it would be key that the leaders are diverse and I don’t think that is diverse, and far too skewed towards the women too.

One of the first posts they made contained one of those dramatic videos where each person takes it in turns saying a sentence and holding up a sign with a slogan like “I belong” with emotional music playing in the background.

"Wellbeing and inclusion are closely linked. The human brain is constantly assessing the environment for signs of rejection and social exclusion and adjusting our behaviour to keep us safe from threats and harm. When people are regularly reminded that they belong, they are likely to give their best, think clearly, feel safe to express their views and ideas and be happier, engaged and supportive of others, too. As such, we all have a responsibility and part to play in driving a culture (and beyond) of increased inclusion; one which boosts wellbeing and enables everyone the opportunity to apply their full potential.

For this campaign, we decided to create a video, involving individuals from across the business describing what an inclusive workplace means to them and characteristics that make them who they are. 

Wow – trying to do this required openness and bravery and led to both tears and laughter.

We learned that who we are is different to what we are, or how we are perceived.

We questioned if people would treat us differently after they read our post.

We understood how hard this was to do but how powerful too.

As you will see, we all answered in our own way and felt bonded as a team. 

Please watch with an open heart and an open mind."

This kinda sounds like propaganda that teaches people they are victims and people are out to put them down. Like I always say, DEI seems to create the problems it is trying to solve. They talk about diversity but then seem to imply that groups of people are targeting you. I wrote a blog about that recently.

DEI In Practice: Marketing

There’s been a big push over the years to show more ethnic minorities in marketing material. Ideally it should be representative of the country’s demographics, but it never is. I end up noticing when you’ve gone through many slides of a presentation and not seen a picture of a white man.

One example is the slides we were given for a new company values, each value had one or more people photographed in an office environment. I made a note of who they were:

whiteblackbrown/mixed/otherTotal
men0123
women3238
Total33511

Is that representative? Not at all.

DEI In Practice: Leader executive program

They recently announced a “Leader executive program” which sounded like a way to train senior leaders. Out of 44 people chosen for the scheme, only 5 were men.

Is that representative? Not at all.

Dartmouth Scar Experiment

If you see yourself as a victim, you'll be convinced that the world views you that way too. The Dartmouth Scar Experiment reveals that. Participants thought they'd be interviewed for jobs with a fake scar on their face, which they saw being applied by a makeup artist. However, during the touch up phase, unbeknownst to them the scar was removed. Those participants who believed that they still had a visible scar, reported a massively increased level of discrimination. They also "displayed heightened feelings of powerlessness, self-pity, and an increased tendency to blame others for their failures." They believed that they were discriminated against and thus internalized it in a negative way. The study essentially revealed that regardless of whether there's actual discrimination or not, when one believes themselves to be a victim it results in negative consequences.

North Face

Companies are going too far with virtue signaling and victim mindset. Like when Retailer @thenorthface are offering 20% off if you complete their “digital course in racial inclusion”.

Customers are told that “white privilege grants access to the outdoors” and warns others are “excluded” from the outdoors because of “racism”

James Esses

The irony is that North Face is implicitly acknowledging here that all its customers are white. After all, why would black customers need to take a course about ‘white privilege’ to get a 20% discount? But if all NF’s customers are white, shouldn’t it be examining the beam in its own eye?

Spotify & Diversity Fatigue

Spotify posted a blog about “Diversity Fatigue”, which sounded like some companies were abandoning the initiative.

"Organisations like Spotify, that are committed to DEI (and not ‘tired of it’) are increasing their focus on data-informed decision-making when setting global DEI strategies… Data provides a stronger evidence-based approach to executing DEI programs and inoculates against the ‘diversity fatigue’ virus, as you can see the progress"
"Conclusion: At Spotify, and amongst other DEI professionals, it is foreseen that we can be smarter with our work, embedding the results and changes deeper into the business so that they become the norm. So if you’re feeling frustrated, I ask you not to quit your DEI work. Instead, look to the HR Community as your support network. We need to band together and point-blank refuse the existence of such a thing as ‘Diversity Fatigue’. This way we are not giving each other and our leaders the permission to give up. Most of us already know from experience – it’s together and with community (and only then) that we can continue to make progress towards a more equitable future. "

One large critisicm of DEI that it’s just reverse discrimination. So there’s the idea that the workforce is too white or too male so then the hiring goes against them even if they were the best applicants for the role. In Spotify’s next blog, they show that they are intentionally doing it for race, although the apparent 50/50 split on gender you could say is more representative of the world.

Our internships help us to identify and nurture potential future employees, and we find that interns often bring new ideas, perspectives, and approaches to our work. Our interns’ fresh insights contribute to innovation and help us stay competitive. Diversity is also fostered through our internships by attracting candidates from different backgrounds, cultures, universities and organizations.
Offering a hybrid experience, provides us access to a broader pool of talent and reach into areas we likely would not have been able to hire from. As a result, we welcomed 161 interns from around the world with over 50% identifying as female globally and 60% of those in the US identifying as being part of an underrepresented group. 

They keep saying “systematic racism”, but they don’t have a problem with systematic racism, they have a problem with meritocracy. You have to discriminate to hire more people of colour, and choose less qualified people (and that is systematic racism)

James Klug

When people make statements against DEI, it starts to sound racist. But I argue that DEI initiatives produces racism. Flip the scenario where whites are the minority…

Charlie Kirk made a great point, around 73% of NBA players are black, and around 17% are white, with the rest of other races like Latino and Asian. Assuming these metrics have happened based on a meritocracy, if diversity quotas were enforced, and there had to be 50% white; would you expect the quality of the league to go up or down? Everyone he asked reluctantly admits it would go down.

Conclusion

So what does the phrase “Seeking Diversity, Equity & Inclusion” actually mean? It’s seeking to create a culture of systematic sexism, and racism, and gaslighting people into thinking it’s acceptable.

Indian Imports

Years ago, we were told that for GDPR (or for some other legal reason), we would always need staff in the UK so we can access data from the production database.

All the staff we hired in India would never be allowed access.

However, my employer once bought a house over the road from the office then allowed Indians to stay there for a few months. So they paid for the flight, Visa, all expenses accommodation to work in the UK for a bit. There was a rumour they could then access production databases but I’m not sure that is true because we have to have a DBS check to ensure we don’t have a criminal record.

Another colleague reckoned we brought them over because if you don’t promise Indians a chance to work in the UK, they will go work for an employer that does offer that. Once they have had their UK trip though, what incentive do they have to stay? Can’t they go work for someone else and get another free holiday?

An annoying aspect of it, is that it was still going on when we were going through a redundancy process, and yet they were trying to assure us the Indians weren’t taking our jobs. I did wonder what the cost was to employ them and pay for their brief UK stay. Kinda seems a hassle to organise as well.

I’m convinced I posted this before, but this was from Colin who shared his screen with an open spreadsheet of people’s wages.

NameRoleRupeesYearly Salary £ 
Prasanth                 
Graduate Trainee 5000004,295.00
Saranya           Software Engineer  6500005,583.50
Hemalatha
Test Engineer6000005,154.00
Vinitha            Junior Software Engineer      7000006,013.00
Vignesh            Software Engineer    10000008,590.00
Padmasri                Junior Software Engineer 6500005,583.50
Hebsi                Software Engineer  140000012,026.00
Shoban             Software Engineer    8000006,872.00

It’s crazy how much money is saved by hiring Indians. They have definitely taken our jobs over the years.

Employee Profiles: Legacy Staff

We used to have two Software Development departments, each one for a separate product. As one got phased out, these “Legacy” developers and testers moved onto our projects. 

When people were hired for the new product, we often went for young graduates in technical subjects. The demographic for the legacy product were from an older generation, and the testers were mainly women; often part-time mothers.

What I think is so funny is that when I had conversations with other staff about them, they would quickly resort to slagging them off and be incredibly harsh. So I knew they must have been bad if they were antagonising multiple people, particularly those that rarely criticised.

Not knowing the basics

Me 16:07:
was Gina one of those legacy developers?
Dean 16:08:
Yeah, why?
Me 16:08:
Dave is explaining how to add a schema patch
why haven't you been showing her the ropes?
Dean 16:09:
i have she's just thick
Me 16:09:
ha

Using code review titles for messages

Me 14:32:
are you ready for Code Review Title Of The Week?
"I am sending this to you to check in the files"
Mark 14:40:
haha
new contractor?
Me 14:40:
Gina
Mark 14:40:
not surprised
Me 14:40:
now that I think about it, I reckon she meant "I'm on holiday, so you can sort out the errors and check it in". But why would you name the actual review that and not just send them a private message or leave a comment on the actual work item?

Code Comments

Me 17:02:
// Gina added do i need to assign the stop event
Mark 17:03:
oh god
what is she?
Me 17:03:
I'm gonna give her a stop event
Mark 17:03:
give her it immediately
Me 17:03:
that code comment is from her code review "sending code to code review"

Poor attitude to timekeeping

Mark 17:05:
I remember sitting with her for about 15 minutes, and her trying to explain something basic in the most convoluted way I've ever encountered, and I almost, so nearly walked off
but then SHE WALKED OFF
just locked her PC, got up and said "I need to go to the doctor's"
so I'm like, do you have an appointment soon?
and she said "15 minutes ago"
WTF
Me 17:06:
haha, is that a true story?
Mark 17:06:
why call me down if you have a doctor's appointment
:@
it was her second DNA (Did Not Attend)
and she already had a warning!
it's totally serious
I'm afraid
Me 17:06:
that happened to me when I slept over at my mates house once. He wakes me up at 10am and said "damn, I have a dentist appointment, you'd better go"
Mark 17:08:
ha
no, you'd better go!
I'll stay sleeping
that's like when Alex said I could stay at his after a work night out
then booted me out for football
so I went and slept in the breakout room for 2 hours

Ignoring instructions

Me 16:53:
Gina sent me an email earlier and Im’ looking at it now and it is quite funny. It has a screenshot of Visual Studio and the projects haven’t loaded. There’s an error message about running it as administrator.

maybe the project hasn't loaded 😀
do you need to run it as administrator?
Mark 16:58:
ha
should be quite obvious...
what does she normally do?
it seems mean, but why don't we let these people go?
draining everyone else

Testing on the test environment

If we were enabling/disabling configuration on the test environments, we sent out an email informing people because it could invalidate their testing if the config wasn’t what they expected. But instead of saying what config was changing, Lisa just said “I’m planning on testing”!

Hi, I’m planning on testing in the next 5mins. Let me know if this will be a problem.

Not knowing people’s names

Dean 11:48: 
Lisa though Dave Walsh's name was Tim Burton
Me11:51:
seriously?
she is like the Gerrald of your team
Dean 11:52:
yeah
not really cos she's just thick
Me 11:53:
that made me lol

No skills

Dean 13:58:
remember lisa?
she was shit
Me 14:00:
she looked more confused than Gerrald
Dean 14:01:
she had no appropriate skills whatsoever
remember when that wasn't even a problem?
people that could just work in a generic office working here
 

Closing thoughts

Working with the “Legacy” testers and developers, it was clear they were hired under a different company culture or hiring strategy. It was like software testing was seen as a job anyone could do, when even basic software testing requires people competent at using a computer, and required a mindset and attention to detail to find or investigate non-trivial bugs.

Recruiting Graduates #6: The Disappointment

Last year, I wrote some blogs explaining how the hiring process for Software Developers is bad.

General Summary Of Why The Software Developer Hiring Process Is Bad

When I was involved in trying to come up with something better, I was frustrated because I didn’t have the answers, but I felt everyone else involved didn’t understand my concerns.

I hate the way Tech Interviews and tests currently are, but I think it’s hard to come up with something as a replacement. When researching example questions, I see lots of questions along the lines of “who invented Object Oriented Programming?“, and I think “I don’t care“.

Then there’s loads of aspects that you would just Google if you didn’t know it e.g. memory usage of each type.

Or you may get questions like “what is wrong with this code?“, but if you actually pasted that code in Visual Studio and try and build it, you would see the error. Or in the case it is valid but not advisable; Code Analysis would flag it. Some of these can be trick questions like mathematical logic where the order of execution is ambiguous, but Code Analysis would definitely flag to tell you to add brackets, so it’s silly having these as a question.

Then I hate all the generic Fizzbuzz stuff (check if a number is divisible by 3 or 5, or even both). These are just so cliché that people could just learn from memory anyway.

Also, what do these graduates we are targeting actually know? back in my day, I knew Java but I was terrible and didn’t know how to test properly, or even debug. So there’s no point testing them on that either.

Stupid Questions From The Internet

During our meetings, I asked the team how they were coming up with the interview questions, and they said they were just Googling for C# Interview questions. This is problematic because applicants may have read and learnt from these very sites, but also many sites had terrible questions, which were sometimes incorrect.  

I came across this website:
https://www.includehelp.com/mcq/is-the-use-of-return-statement-necessary-in-every-function-in-csharp.aspx

 95. Is the use of return statement necessary in every function in C#?

 Yes No

 Answer: A) Yes

 Explanation: Yes, the use of return statement is necessary in every function in C#.

I think some programming languages may differentiate between “methods” and “functions” where “functions” always return something. But in C# you just call them “methods” which can either return something, or be defined as “void”. So this is just incorrect.

 99. Which is the first line of a C# program?

 using System;

 using system;

 using Namespace;

 namespace MyApplication

  

 Answer: A) using System;

If you create a blank class, “using System;” is the first line, but A) you could remove it B) the order of using statements matter C) in modern C# you could move it to a “global namespace”. I also asked the question of “who are we targeting?” because everyone was coming up with C# specific questions. My colleagues told me the universities we were targeting were primarily coding using Python! So we were writing the wrong test, or targetting the wrong people.

The Performance Review

In my recent performance review, my manager Colin stated:

“You were given an opportunity to lead on defining our interview process, but have not shown much interest in it. Ultimately someone else led it, creating the interview pack, redefining interview questions and leading live interviews, which I think is a missed opportunity to shine.”

Colin

I argued that: although I didn’t have a huge impact on the end result, it would have been a bigger mess had I not pushed back on some of the questions. Although it seems some of the interviewers still asked questions I said weren’t suitable.

We ended up coming up with a terrible process that some candidates dropped out of, and the ones that went through with the interview struggled and we were left with the decision to gamble based on what little we saw.

The Best Hire

One of the best hires we made was someone I didn’t interview, but I looked at the interviewer’s notes, and he didn’t exactly look like a strong hire. 

  • Implemented the basic application to consume webapi and just printed the values based on some predefined values
  • No unit testcases were written
  • application is simple
  • Inheritance – simple explanation
  • polymorphism – no idea
  • interface – not good explanation
  • purpose of inheritance – No idea
  • Print the numbers and its occurrences – Not completed, but after showing the hints he completed
  • Print the number from 1 to 100 using Recursion – Completed
  • print the numbers based on divisible values – Completed
  • Logical, cut the cakes into 8 pieces with 3 cuts – Completed
  • Candidate lacks on syntactically at some areas, but has some logical solving skills and good attitude on approaching things

When I stated to Colin that it “wasn’t a great batch of hiring”, Colin said out of the people we did interview, we ended up hiring around a third of them – which he said was above the normal hiring rate. I said that it was only above the hiring rate because we hired people that should have failed. Then later, he quoted the numbers “15 interviewed. 4 hired” (more like a quarter then). But there were loads of applicants rejected before the interview stage, and others dropped out along the way.

Intermission: Bantz from Twitter

The Polymorphism question

The Polymorphism question that was asked on some of the interviews was basically “do you know the types of polymorphism?”   

I didn’t even understand the question, and I probably have 10 years of experience.

I was only thinking about the usual polymorphism where you can refer to derived types as the base type:

 IAnimal animal = new Dog();
 animal= new Cat();

To check if I wasn’t going mad, I asked some of my colleagues. Here is how they responded:

“not sure i do, no. Inheritance and Composition, are they right?”

Dean (Senior Developer around 10 years experience)

Like covariance and contravariance? But I don’t think I could put it into words. I guess you have real polymorphism and fake…virtual functions have a virtual function table that map overridden functions from base classes. But a lot of polymorphism is just the compiler being intuitive and going “you’re not crazy” it can be treated as that type. 

Adam (Software Architect)

Types? an interface can be implemented many times. A method can have the same sig but different parameter types etc

Rob (Senior Developer around 20 years experience)

According to https://www.bmc.com/blogs/polymorphism-programming/, there’s Runtime, Compile Time, Overloading, and Casting. So if very experienced developers can’t explain the concept, then why are we using the question to target Graduate developers?

Conclusion

It annoyed me that Colin stated “have not shown much interest in it”. I was trying to make sure we had well-defined objectives on the exact type of developer we were hiring. Everyone else just started copying questions for the internet without considering the knowledge and experience of the people we were targeting. I didn’t have the solution of how to make a good software development hiring process, but I really wanted to make sure we got close – but I just didn’t have any support from everyone else that was involved.

Initial Onboarding Guide For Software Developers

Intro

I’m stealing ideas from a former colleague again. He had a blog post about Onboarding, and I felt I had seen many of these mistakes myself so they are worth thinking about if you are a manager and are expecting a new starter. These points are mainly about an office environment, so some points are no longer relevant to us, or are different now we work from home.

Onboarding Checklist

There’s a lot of work done during the recruitment stage; reading CVs, lots of meetings with recruitment teams (in-house or agency), and lots of technical tests and/or face-to-face chats with candidates. Once the offers are accepted, your work doesn’t stop there, but you have some time to prepare until the new-hires start their new roles. Some tasks are:

  1. Find a desk
  2. Find a chair
  3. Order the laptop
  4. Order Monitors
  5. Order the peripherals
  6. Consider collaboration
  7. Grant access to digital tools and codebases
  8. Make sure you are available on their first day

If you do not deliver on the above, the new starter’s first impression of you will be of failure. If you can’t organise equipment, desk, and have a plan to get them started, then what else will be missed? (pay reviews, promotions, training budget, etc)

Onboarding Checklist Discussion

Find a desk

If you are replacing a staff member, then you should have a desk already. However, is it clean?  If the desk has been vacant for some time, it can end up being a dumping ground for miscellaneous items (books, broken equipment, old stationery). Are there any problems with the desk? Does it wobble? Is the key missing for the drawers?

Find a chair

Chairs are more notorious for being damaged or dirty. Make sure all the wheels are still there and the back can be adjusted. The chair should be clean; not stained, or dusty, and free from any other horrors.

Order the laptop

You may be restricted by company procedure, but if there is a choice of laptop, make sure the new employee gets the one they desire. If the developer has a strong preference for a certain system Windows/Mac/Linux, it’s a productivity hit if they get something else. Another thing to consider is the form-factor – If they travel a lot, a smaller size may be much more comfortable for them, especially if they want to partially work on the train. The large screen can be gained from plugging into a large monitor at home or office.

Order Monitors

Many developers like having 2 monitors, although in recent times, it seems some are switching to 1 very large monitor. It’s great to have a combination of your code editor on one screen, then documentation/the software itself on the other.

Order the peripherals

Order the keyboard, mouse/trackpad, headset etc. Even if there are loads spare, they may be partially faulty, or just unhygienic.

Consider collaboration

Teams are full of people – full of personalities. It can be potentially tricky and there’s some nuance to it. Take some time to consider the optimal place for the new starter to sit. Is it the “replacement” spot? Is the desk more isolated? Is there some weird office joke about the desk!?

Who would they pair well with? Is the new starter’s job something someone in the team wanted (missed out on a promotion)? Is there someone who is seen as a bad influence?

Grant access to digital tools and codebases

Sort access to the code, and work management tools (licence keys for all required software).

Make sure you are available on their first day

If office based, be in the office. If distributed, you need to be free for video calls etc.

THIS IS YOUR MANAGER WHO 
BOB, CAN YOU SHOW 
WILL TAKE CREDIT FOR ALL 
THE NEW EMPLOYEE 
YOUR WORK. 
AROUND? 
SURE. 
(YAN G 
e 99 
workchronicles.com 
AND THIS IS WHERE YOU'LL 
THIS IS WHERE YOU'LL 
WORK LATE NIGHTS ON 
SPEND HOURS IN 
EVER CHANGING PRIORITIES. 
99 
Hello. I make comics about work. 
Join r/workchronicles or follow on Instagram/Twitter/FB 
Work Chronicles 
workchronic/es.com

Bonus: New Starter Packs

When I started, I think all I got was a writing pad to make notes. Maybe I got a pen.

Years later – existing staff, and all new staff were also given a water bottle, and a company-branded hot drinks flask. Even though it’s a simple thing, everyone seemed to appreciate it.

More recently, it was announced that “New Starter Packs” would be posted out to all new starters, and we were asked for feedback on the contents. I don’t get why they didn’t anticipate some backlash because they only planned on giving them to new starters. Also, they clearly had already ordered a certain level of stock because they were taking photos of them and had quite a few company-branded items.

There were the obvious choices of pen, paper, post-it notes, drinks bottle, in addition to some chocolates, sweets and some other miscellaneous items.

“The new starters will be there with their fancy laptops, new starter kit, and high wages, laughing at us”

Me

Some people criticised the choice of unhealthy treats, given some recent schemes to promote healthy lifestyles. There was also a Webcam Cover you could put on your laptop, which someone questioned if our IT department had approved it – to which the Head of IT said they weren’t authorised because they “crack screens and they also damage the bezel of other laptops when removed.”

It was also only for staff based in England, but a high percentage of staff are now based in India, so the managers admitted we need to find a supplier over there too to be fair.

So it wasn’t a well thought out idea really.

Employee of Choice Update – A change that impacts me

Intro

Recently, the company announced an “Employee of Choice” scheme. It wasn’t clear if this was an official award or a self-awarded title. Essentially, they want to improve a few key aspects so that current employees would recommend working here.

There were a few key pillars: Culture, Leadership, Employee Rewards and Terms, Work Environment, Processes, and Branding.

Many people were sceptical that there would be any meaningful improvements.

Increasing Notice

Shortly after this was announced, I was notified that my contract had changed.

Your contract of employment is for an indefinite period but subject to notice (and to the terms of this agreement). The period of notice to be given in writing by the Company (or by you) to terminate your employment shall be three (3) months’ notice.

Contractual Change

A 3 month notice period is a lot. I think it’s only beneficial if they want to make me redundant, but if I want to leave, having to give 3 months could put other employers off hiring me. I’m not planning on leaving, but the increase from 1 month to 3 months seems to be contrary to their aims to improve “Employee Rewards and Terms”.

I contacted one of our Employee Representatives. They have meetings with Senior Management/HR to discuss improvements/complaints.

Becky

I thought it was based on length of service: The longer you’ve been here, the more notice you give

Me

I think it used to be. I think now they want Seniors to have 3 months and Experts and above to have 6 months. If you want to leave, what is the point in keeping you here. 3 months is excessive, 6 months is pure bonkers

Becky

ohhh that’s alot….I’ll put this to the forum

Me

put my quote in there as well. Needs to say “pure bonkers”

Response

“In line with current markets and business critical roles, some notice periods have been reviewed. Colleagues should refer to their line manager for further information”

HR

Basically they claim to look at what everyone else is doing and want to mirror them. Yet the whole point of the “Employee of Choice” scheme is to do better than the competition; and not copy them. Increasing from 1 to 3 months is a step backwards.

I went back to Becky, but she said she wasn’t actually there in the meeting so had no idea what was said. However, she did say she will try to re-raise it because she didn’t think their response was acceptable.

T-Shaped Engineer

Recently, I came across a new jargon term, the T-Shaped Engineer. I think the general idea is that you used to have a “specialist” or a “generalist”. Now the perception is that it is good to have a compromise between them.

A generalist is like the adage, “A jack of all trades, but a master of none”. You learn new technologies but not achieve a deeper understanding – since mastering anything requires you to dedicate massive amounts of time to the craft. When challenging work needs to be done, engineers with deeper knowledge are needed; aka the specialist.

Specialists devote their time to a narrow set of technologies. They probably don’t learn the newest technology unless it falls into their specialist domain.

Work was often prioritised based on what resources were available. If a feature required more developers with a certain skill-set, and they weren’t available, then the development had to be postponed. If the company hires more developers with the required skill, when priorities shift, you can end up with spare/unassigned developers. This was a hard balancing act for the Product Managers. Sometimes, the developers could end up being asked to take tasks they wouldn’t normally do.

This has led to a new kind of engineer – the “T-Shaped” engineer. This describes a person whose knowledge distribution looks like the letter T. The horizontal line represents a broad knowledge in multiple areas, and the vertical one represents a specialisation of a topic.

From I-Shaped to T-Shaped – Why DevOps Professionals Need to be Multi-Skilled

Theoretically, having a full team of T-Shaped engineers with their own specialisation means that work can be prioritised. Whilst they may have a broad general knowledge, managers need to remember they can’t perform exceptionally everywhere. The concept isn’t a silver-bullet.

If “Pi-shaped” and “comb-shaped” developers exist, then you would think those would be the developers to hire. I suppose if you do find them, then they will be rare and demand large wages.

References:

What are T Shaped People? Youtube video

https://alexkondov.com/the-t-shaped-engineer/

https://www.devopsinstitute.com/from-i-shaped-to-t-shaped-why-devops-professionals-need-to-be-multi-skilled/

Reference Letters

Not a software development post, but an interesting one in the general topic of recruitment.

I think the idea of a reference letter is a good one, but in reality, can it really work? If a new employer asks your old employer about you, why should they respond, and how much detail can they even provide for you?

I suppose if it is a legal requirement, then they have to provide one, but if they write disparaging remarks then you may never be able to get a job.

I don’t work in HR so I only know what people tell me, but my colleagues have said that in the UK, references these days are basically “I confirm the said employee worked here as a developer between the years 2015-2022“. So they confirm that the former employee isn’t lying to the new employer about working there for X years with Y job title. But how well they actually performed is a mystery…but maybe could be guessed by the length of service. I suppose simply confirming this basic info means applicants cannot lie about former employment, or at least the last place they worked (they could lie about the day-to-day role, responsibilities, and performance).

A couple of months ago, I came across this post on stack overflow:

Should I tell my prospective employer that I drafted my own reference letter?

It is a very interesting thing that happens in Germany. The original poster says that he has been writing his own reference letters, then gets his employer to make minor edits before signing off on it. It seems they get the reference letter before they actually start a new job so it is ready for when they go to job interviews. There, the original poster has said interviewers have questioned if he wrote it.

It is becoming increasingly common that employers ask you to draft your own reference letter. Some people consider this practice ethically wrong, some consider it illegal. I usually agree to draft my own letter, on company time because it’s the company’s responsibility to produce the letter. Then I get my boss to edit and sign it. For jobs that play no significant role on my CV, I tend to just go without the letter.

For various reasons a prospective employer might ask if I wrote my own reference letter. Maybe it’s something about the style, I slipped in details the employer wouldn’t emphasize (or even know of), or the letter is too good, or too bad, or matches my self-image too closely, or I don’t know what.

The top answer made me laugh at how there’s a secret language employers use to communicate to get around the legal restrictions: 

As you probably know, German reference letters are a highly coded thing. While it looks like proper German sentences, it is actually code, wrapped into a natural language.

German courts ruled that those reference letters have to be “constructive and not detrimental to finding new employment”. So basically what happened is that German HR departments invented a code, so that they can have a positive sounding sentence that have a negative meaning. So they can still express the fact someone was not that good at their job, without being sued.

This code is far from secret. You can buy fistfuls of books from Amazon. You can even buy programs, where you can enter school grades for different parts of the employees job and the generator will generate nice and positive German sentences from it. Even if you entered all “F”s (or “6”s in the German school system’s grading system) it will read like the employee of the year to someone unaware of the code.

Obviously, any HR department worth it’s salt also has the magic decoder ring, to know, when reading those sentences, what they actually mean.

I’m always joking that “very social and good with rescue equipment” in such a reference letter means “was fired because they attacked their boss with an axe when showing up totally drunk the fifth day in a row”. So yes, this is an art form.

However… once in a while, something unexpected happens. Someone actually writes those references. With the best intentions. They write it without knowing too much about that code and they find nice sounding sentences. And they mean those sentences at face value. “good employee” actually means that it was a pretty good employee. While in HR terms, “good employee” ranks maybe second to last on their scale.

As you probably speak German, an example in German: “zu unserer vollen Zufriedenheit” (to our full satisfaction) for example sounds like a great phrase. Completely satisfied with their behaviour. Great. Until you realize, in HR speak that is barely a “c”. “zu unserer vollsten Zufriedenheit” (to our fullest satisfaction) is one better and “immer zu unserer vollsten Zufriedenheit” (always to our fullest satisfaction) is another one-up.

So when people ask whether you wrote the reference yourself, what they probably want to know is: was this written in codified HR language, or did you wing it?

Because references that someone without HR knowledge writes to the best of their abilities and well-meaning, when read with the magic HR decoder ring, sound like that person is maybe vaguely qualified to stand in for a potted plant. Temporarily, until you get a real potted plant that might do a better job.

So as for many questions here, the answer is simple: tell the truth.

If someone from HR wrote it or you wrote it and you consulted one of those books with the “secret” (as in “sold on Amazon for 5.99”) knowledge, then tell them. If someone wrote it with no knowledge of that and just wrote what should be taken at face value, tell them, too.

Because if you read one of those things with the wrong expectations, it will be about the exact opposite of what the writer wanted to say.

https://workplace.stackexchange.com/a/186190

This codified language reminds me of how medical staff apparently write disparaging remarks on your medical documents as an in-joke between staff. It’s all fun-and-games until recent software programs and data protection laws have enabled patients to review their records.

I don’t recall specific examples of what was quoted, but these sound roughly what I was told. It was on the topic of how attractive you look, or what your attitude was.

8 Medical Terms Your Doctor Uses to Insult You | Cracked.com

The secret codes doctors use to insult their patients | Daily Mail Online

Doctors’ Humor and Secret Language Revealed (medicaldaily.com)

Recruiting Graduates #5: The Induction

I’m not sure how many people we offered jobs to during the recent recruitment drive, but 3 new Graduate Software Developers have started. We have never had a good induction process – we usually just expect people to start working on Day 1, but people won’t be familiar with our software, and the process.

Additionally, we always supply people with a stock laptop that could have been given to anyone in the business; so it doesn’t come with any development tools at all. So you need to install Visual Studio, SQL Server, and a few other things. However, these days, our IT has ramped up the security so now you cannot install anything without them remoting on to type in the administrator password, thus exacerbating the poor induction experience.

I wasn’t involved in creating the Induction process, the group of Senior Developers and Testers in India somehow went ahead without us in the UK. 

They decided to use a Kanban board to track the tasks for the new recruits. They created tasks for each aspect like “Laptop configuration”, “Agile process overview”, “C# basics” and many others that made sense to me. The kanban idea was a good way of tracking their progress but it already seemed messy with 3 new starters but there’s more coming. I suggested that they use “Swimlanes” which can split the board into sections which can be used per person, but for some reason they rejected my idea in favour of their disorganised mess. So if there’s 10 tasks for each person, there’s 30 tasks that were initially on the backlog, and as they move to In Progress/Done, you cannot really tell how far each person is through the scheme without using additional filters, or configuring colours. Then when more new starters join, it becomes a complete mess with 10 more tasks being added.

I felt some of the tasks weren’t mandatory for the induction. One of them was Automation. Some developers in some teams are involved with automation, but it is usually given to the Software Testers. I think there’s different types of automation depending on the team you are in. The Seniors listed several types of automation, and provided links to LinkedIn Learning or Youtube – courses that were sometimes a few hours, but some were up to 8 hours. Then some were C# based, some were Java based, and some were Python based (it included JMeter, Selenium, Behave, PACT, Python, General automation). So you had to learn the base languages as a prerequisite.

“the videos are short, many around 7 hours, some are 1 hour”

Indian Senior Tester

When I saw that they had created a task that could potentially last 50 hours and wasn’t required for the job, I voiced my opposition to this idea and Becky, a Senior Tester agreed with me.

I said they aren’t going to learn if they are just watching videos, and won’t remember which is which. The constant switching of programming languages will probably hinder their retention. It’s very boring with the amount we are asking to do. This “Automation” learning task would already take a month to do if you are actually going to follow along and experiment with it. Then you have all the other induction tasks which involve reading, watching videos, and installing more software.

Becky pointed out we don’t even use this type of Automation in our particular teams so we shouldn’t ask them to do it. But then they said we “want to train them just in case it is used in the future“. We said we could just train them when it was needed, but they insisted it should be part of the Induction. Becky could sense they weren’t gonna back down so she asked that we inform them about which teams use automation and how often it is used so they can make their own judgement to learn it. They replied

why should we inform them? we don’t want to set the expectation that they won’t ever use them”.

Indian Senior Tester

Towards the end of the meeting, he then said the new employees have already given feedback on the process. He said that all three agreed that:

“it’s hard to concentrate with all the videos we want them to watch, and all the reading we want them to do”.

Indian Senior Tester

Let me get this right. I said there was far too much for them to watch, and he argued with me about its importance, and then he said they have already complained about that exact problem, and they had only been here a week. Brilliant.

Recruiting Graduates #4: The Applicants

Introduction

Other blogs in this series Recruiting Graduates #1, Recruiting Graduates #2, Recruiting Graduates #3.

Fredrik Christenson (I didn’t make a note of the exact video it was from) once stated good developers can be judged by:

  1. How they reason about a problem
  2. Their way of communicating with people
  3. How they voice their concerns/make decisions. Asking the right questions, pushing back in the right circumstances in order to get the right requirements; have “Guiding conversations”.

I think the general set-up of our interview can lead to this. The first part is for them to present the take-home test we gave them. They have to write a simple application with a UI and present data it retrieved through an API. The second part is to do some live coding, and define a few technical terms. Then the final section was some behavioural questions led by Colin.

Colin’s Update

Colin had interviewed several candidates for the Graduate Developer role in India. I asked him if the interviews had been going well, and he said the Graduates “couldn’t write code“. He said there was someone with a Masters degree, who then said they

just learnt the course material a few days before the university exams then instantly forgot it”.

applicant

I guess at that point in a programming interview, when the interviewers are asking why you can’t write any code, then there is probably no way to get yourself out of that situation.

Saying you are forgetful is just instant rejection, although points for honesty, I suppose.

My Preparation

When it was my turn to do some interviews for the UK-based applicants, I was worried. I hadn’t been given any training or guidance, and the questions we had come up with were poor and I didn’t feel comfortable asking them. I was also scrutinising their applications and was trying to come up with questions based on their descriptions of their university course, or small amount of work experience. However, when it actually came to interviewing, there was actually someone else leading the interview, and Colin turned up too. So Colin had misled me that I would have a big part in the interviews. Also, Colin said he never asks questions about their CV, and sticks to coding or behavioural questions – so I’d wasted my time.

To be honest, I’d wasted my time anyway – because the first 2 interviews I was lined up to do were cancelled with half a day’s notice. Not sure if the HR team were slack or if the candidates backed out late. Colin speculated that people were dropping out because they couldn’t do the take-home test we gave them (which they would present in the interview). Maybe that means it is a good test. Colin said that he didn’t give the take-home test to the applicants in India, which could explain why he ended up interviewing people that couldn’t write code at all. 

He didn’t give them the test due to our Indian Senior Developers saying the test was too hard for Indian Graduates to do (see Recruiting Graduates #1). To me, this seems like an admission that Indians are generally inferior, especially if they are happy for us to give the challenge to the UK applicants. This seems a very strange admission indeed. 

The Cheats

Colin also said many of the applicants were caught cheating. On the questions where they were asked to define technical terms, they were reading the definitions from a website. He said some of them hid it well in terms of eye/arm movements (since they had to have their webcams on). However, the phrasing was a bit suspect, so Colin Googled the response and found the website they were reading it from.

He said another candidate seemed to pause whilst they thought about a question, then all of a sudden pasted in a block of code plagiarised from a website. 

“HERE’S SOMETHING I PREPARED EARLIER”

fictional quote, inspired by the classic Blue Peter line.

Scoring

Colin did actually hire a few of the Indian applicants though, but when I looked through their Interview Feedback, the interviewers were scoring them 2/5 on most sections, but then a few sections were 0. So the scores were clearly a fail but we were hiring them anyway.

I also noticed that candidates who provided the programming answers in Python were scoring lower, even though, when I looked at the code – it looked correct. The problem is that it is a C# job and the interviewers only know C#. However, many of the Universities we were targeting used Python as their main language and we knew this up front.

So for the same job, we have a stricter process for UK candidates, and are also biassed towards C# candidates even though we only ask for knowledge of programming and don’t require prior C# knowledge.

Applicants

Time Magazine’s “Person of the Year 2006”

I did read through the CV’s of the people we hired. We hired Time Magazine’s “Person of the Year 2006”. I did wonder if Colin or the other interviewers had read that because it’s an instant red flag to me. It doesn’t sound like a legitimate claim, but then if you research who the award went to, it went to YOU. To put that on your CV is a joke though, unless you really did contribute significantly to online content. So if the candidate couldn’t justify it, I would just reject them.

Game Developer

For one of the guys that dropped out, I had some concerns with his application. Maybe he was legitimate but I think his claims weren’t backed up by the evidence he provided.

The first thing I noticed is that he stated “deep knowledge and proficiency in Java, Python, HTML, CSS, and JavaScript.” but I didn’t see any examples on his GitHub page, and there’s no commercial experience listed in his Work History. I wanted to ask him:

 “Can you tell me what kinds of applications you have developed using these?”

My proposed question

He did say that his GitHub profile “included group projects.” but which ones were Group Projects? Working on group projects is fine, but I think it needs to be clearer so you can judge what he has done on his own. If they had used source control properly, you would see the commits by each user – which is where I saw the major red flag. All the commits were actually done by someone else. The only thing the applicant had done on the entire repository in his name was to initialise the repo, and fix a build issue at the end.

Your profile has another “contributor”, can you tell me who that is?  – They have committed all the games to this repo.

My proposed question

Many of the games on the repository were Unity games, and I downloaded them, looked through the source code and play-tested them. For someone who had done a Games Degree, I was disappointed in the quality. Most of them I felt I could have made, and there were some really basic game design mistakes, and he said one of his University modules was “Advanced Game Design”. I wanted to ask this:

“If you worked on these games again: to fix bugs or improve the game design, what would you change about them?”

My proposed question

Example answers would be: In the Platforming game, you can stick to walls and the sides of platforms if you hold down the arrow key – which seems like an obvious bug. In his Snake game, it wasn’t clear what was happening, and you can move over enemy spawn positions to instantly kill them as they spawn in. 

For his experience working in Home Bargains, he claims he

“Engaged with customers and built relationships to advise customers on products they’d like to know about”.

Candidate, clearly blagging

Home Bargains is basically just a supermarket, and he is hyping it up as if it is a sales job and personally gets customers returning. That doesn’t sound like a valid description of this role. I shop at Home Bargains and I don’t ever recall seeing anyone talk to the staff there unless there is some kind of dispute. 

Python, Machine Learning Expert

The first guy I actually interviewed was about to finish his Masters degree, and has a Machine Learning degree. He seemed decent enough at Python to be able to do the take-home assignment, which he said he rushed through in a few hours because that was the only time he could dedicate to it. However, he seemed to struggle on the live coding part. I tried to prompt the candidate to talk us through his code, but he seemed to prefer coding in silence. I even helped him out by pointing out a bug in his code, but he ignored me, then wasted another 5 minutes working it out. I did wonder if he understood what I was saying. His CV claimed “Good communication and Presentation skills” but his presentation was full of “erms”, and during the live coding, he barely said anything, even when I reminded him to explain his thought process in order to gain more marks. By our scoring system, he scored very average but he has good credentials and I think there is potential there. You would think with his credentials, he would aim for a fancier job which could utilise machine learning though.

Possible Cheat

The second guy I interviewed got off to a good start. The program he demonstrated looked very complex. He said he was new to C#, and had good knowledge of C++, but he used our task as a good opportunity to learn C#. He actually used ASP.Net with Razor. It was mainly C# but it also contained some Javascript. He explained the program reasonably well, but then suddenly seemed to doubt himself and say that his program wasn’t very good. I assured him it was actually very impressive. However, when we moved onto the technical definitions, he couldn’t answer them very well at all. He really struggled with the live coding questions, then reminded us he is a C++ developer. However, after letting him re-attempt using C++, he still struggled to get something even close to what we asked. I find it hard to read C++ but he came up with some strange approaches and couldn’t explain his thought process at all. It made me think that he got someone else to write the take-home test.

3rd Guy

The third guy I interviewed seemed like a much well-rounded person. He explained his code well, asked questions when he was unsure of what we were asking, and showed he could debug (well, to a basic level anyway) when his code didn’t work. I made it clear to Colin that I thought he was the best candidate, but sadly he got offered a job elsewhere for way more money than what we could offer.

WE HAVE FLEXIBLE 
WORKING HOURS. 
INTERVIEWER 
NO. 
WE DECIDE YOUR 
WORKING HOURS. 
J) 
WorkChronicIes.com 
Fo//ow me on 
GREAT! 
SO 1 DECIDE MY 
WORKING HOURS ? 
WE STRETCH IT AS 
MUCH AS WE CAN. 
IT'S VERY FLEXIBLE. 
b