Why Code Challenges are Bad Practice for Hiring Senior Developers

Like many kids growing up in Canada I went through the Royal Conservatory of Music (Grade 10 piano, if you’re curious).

The Royal Conservatory is a physical place in Toronto where you can study music or perform. However, it is also a standardized curriculum and certified teachers available coast to coast in virtually any large centre or small town. They hold regular examinations across the country where you can go and be graded in order to advance to the next level in your musical education.

Technical Exercises are a Learning Tool

Each examination has a technical component and a performance component. Let’s talk about the technical portion. For your grade, you need to show mastery of certain exercises with your instrument. On the piano this was scales, formulas, arpeggios, etc … I can’t remember all of them. And as you progress the exercises become more complex and you are expected to learn them in more keys until at the highest exam you can be asked to play any exercise in any key.

After 14 years of serious piano lessons and RC examinations I could play any technical exercise in any key. However, more than 14 years after my last RC examination I can’t even remember what the technical exercises names are. Can I still learn a piece of music and play it at a performance level? Absolutely!

Technical Exercises are not a Professional Practice Tool

I’m willing to bet that out of all the kids that went through the program and then became professional musicians very few can still do all those technical exercises if you pulled one out of a hat and expected them to do it perfectly. Sure I draw on parts of them in each piece of music I learn but it is only a portion of a single exercise and I refresh my memory as needed.

Fast forward to this week when I was working on a Hackerrank problem for fun. I had to pull out my old text book for data structures and algorithms in order to code up a merge sort from scratch.

I felt inadequate, sent a tweet, and then a light bulb turned on in my head.

Tweet saying I could write a merge sort out of my head when I was fresh out of university. But not that I have over 10 years experience I need a textbook.

Therefore, any company that uses this as a hiring code challenge should expect a junior dev to solve it.
https://twitter.com/glenmccallumcan/status/1141772824542973952

It’s just like all those hours I spent practicing technical exercises for my Royal Conservatory examinations. Sure they’re important at the time. We all studied these algorithms in undergraduate computer science classes. But as you gain a lot of professional experience you learn how and when to apply them then you refresh your memory as needed. I knew exactly what merge sort was for and I knew exactly where to find the reference algorithm. I just didn’t have the details in my head at that moment.

Some will argue that any senior professional developer should be able to code up a merge sort out of their head at any time. It is so foundational. I don’t believe that. Does it make you a better professional musician if you can play all scales perfectly at any time? Absolutely not! In fact I’d argue that you’re wasting precious practice time. And I don’t hold it against any developer who does a quick refresh when it comes time to apply a particular algorithm to a software development problem.

Technical Exercises Should Not be used Exclusively for Hiring Decisions

How silly would it be if you asked a professional musician with a history of outstanding performances to sit down at an audition and play a scale? It’s insulting. Then dismiss them before they even perform because they didn’t do the scale perfectly.

The thought makes me sick to my stomach. But in 2019 it happens every day to senior developers applying for jobs.

Companies are using 3rd party code challenges as a filter to reduce the number of applicants. Many quality senior devs are screened out because they don’t regularly practice that type of problem solving. Then the companies that are hiring senior devs complain that they can’t find any “good” ones.

To be clear I’m not talking about working through a problem together with an applicant. Especially not talking about any discussion when all the people are in the same room. I’m referring to the situation when developer submits application to company. Company HR sends them a link to timed hackerrank problem on a 3rd party website. Developer does problem session and the result is sent back to Company HR. Then Company HR makes a go or no go decision based on 3rd party code challenge result. Basing hiring criteria on this result is a poor practice in my opinion.

How to Evaluate Technical Ability of a Senior Developer

From my experience the best way to get a feel for where another developer is at is through pair programming. Spend 1-2 hours together screensharing. Work in your environment with your tools on your project. Then switch and work in their environment on their tools with something they’re building. You’ll soon have a gauge where they’re at by the questions they’re asking.

I have a newsletter for software developers.

My Big Goal For June 2019

I believe it is good to have one big hard personal improvement effort you are working on at any given time (only one): be it exercise, diet, or another positive habit. That’s what I’ve started doing this spring. Last month was a sleep experiment.

My goal for June 2019 is another sleep experiment: I will be following the Everyman 2 pattern of polyphasic sleep every day for the entire month. It has 4.5 hours of sleep per night with 2 naps spread out during the day. Bedtime stays consistent at 11pm so it does not disrupt family routines. The extra 3.5 hours in the morning are my own for work.

Everyman 2 Polyphasic Sleep Chart
Core phase 4.5 hours 11pm to 3:30am
Nap1 8am for 20 minutes
Nap2 2:30pm for 20 minutes
Everyman 2 Polyphasic Sleep

Why another sleep goal?

Sleep goals create more time for personal and professional development. More time is an enabler for achieving other goals. The makes this sleep goal a keystone habit for me. Without even setting specific goals I’ve already started reading more, journaling, and walking/jogging every morning (It’s doing amazing things for managing my blood sugar).

I’m going to give this a go even though I’m not sure I have the stamina for this one. If it doesn’t work out I will revert to the good pattern I established in May since it felt sustainable.

My Routine

The biggest challenge of waking up early is filling the time constructively. If you don’t have anything to do you will inevitably go back to sleep somewhere (especially if you are trying to read). On the other hand if I’m too strict with my time the morning won’t be a pleasure and I won’t look forward to getting up in the morning.

This morning is my 4th day getting up at 03.30. Here are somethings I use this time for.

  • Emptying the dishwasher, straightening up the kitchen while listening to the Mad Money podcast. This is the first thing I do every morning when I get up.
  • Reading positive books. I tried this a couple of days. I found myself getting drowsy and I’m not sure how much I was getting out of it (albeit the first couple of days so fatigue is certain) . I didn’t do it this morning and it may become more worthwhile in a month after the adjustment phase.
  • Going for a long walk or light jog. As I mentioned above I had no idea how much this would affect my diabetes management. After 45 minutes to 1 hour my blood sugar drops to a healthy base level and that becomes my starting point for the day. It is like hitting a reset button.
  • Doing physiotherapy exercises. My physiotherapist gave me some rehabilitation exercises that take about 30 minutes. This time of day is the only time I’ve been doing them.
  • Watering our vegetable garden. After I get back from the walk I head to our vegetable garden and make sure the plants are well-hydrated. Previously this could be neglected in our morning routine.
  • Emailing people. Not the best use of my morning time, I know. Maybe I shouldn’t. It happened so I’m including it.
  • Shopping online. This morning (Saturday) I checked only ads for vintage motorcycles. I found a really cool one, a 1977 Suzuki TS400. It was fun to dream but I just don’t have the bandwidth to take on the project. And why that project over some of the vintage motorcycle projects I could tackle on bikes I already have in my stable?
  • Long hot shower/shave and a long hot breakfast. Need I say more?

What I Haven’t Planned For

Notice there is no work on this list. Work may or may not happen during this time. I start my work time at 07.00 every morning. Some adjustment is needed since one of the new nap times interrupts my professional development time.

Also note there is no gym time here. This may happen in the future as well. I don’t have a gym membership right now. And there are no gyms near me that are open before 06.00 – I would have to drive into town. It is getting light out so early at this time of year. It is easy to just go outside for exercise. At any rate weightlifting is a big goal that is best saved for another month.

Moving Forward

This post won’t be promoted since I don’t think many people care about my weird sleep experiments.

I’ll post an update on twitter once per week to let you know how the progress is going.

Polyphasic Sleep For Software Development – My First Month

My difficult goal for the month of May is adjusting my sleep to follow the Everyman 1 pattern. Polyphasic sleep is one way that I create more time for improving my sofware development skills and learning in public. I also plan to use this time for coding up side projects and personal business development.

Since Friday, May 3, I’ve only slept 5.5 – 6 hours per night. Now I realize some people function like this consistently but not me. I’m used to being in bed for 8 hours every night without failure. So the uniqueness about cutting down my sleep to 6 hours is that I’m trying to do it in a healthy, sustainable way. No caffeine allowed.

I’ve tried polyphasic sleep before. Several years ago I saw it on Steve Pavlina’s site. It was horrible. I crashed. Big time. Only this year did I realize he was following one of the hardest polyphasic sleep patterns in existence (6 naps of 20 min duration per day) For my new attempt this month I chose one of the easiest sleep patterns in existence, Everyman 1. It has one core sleep period from 23.00 to 5.00 then a 20min nap at 13.00. For someone with a family or any type of social life I think your chances of success increase if you leave your evenings unchanged (e.g. don’t start going to bed at 8pm and getting up at midnight).

For this month I’m not too strict about what I do with my time after I get up, say between 05.00 and 07.00. I want it to be the most relaxing experience so that while I’m adapting my brain associates it with pleasure. After the habit is ingrained I can modify my schedule to use the extra hour for increased software development time. Therefore this month I’ve been taking a hot shower, having a hot shave, and sometimes making a bowl of hot porridge. I usually have a few minutes to go for a walk outside and let the goats out of the barn before 07.00. At 07.00 it is back to my existing routine – writing, coding, studying.

Nap time is more difficult. I work from my home office so that makes it possible to lay down on my bed for 20 min. I also try to not look at a screen for 30 min before my nap to let my eyes relax. My lunch break is from 12.30 to 1.30 (However, I have to be flexible depending on what is happening with work. We are a highly interactive team). First I make/eat my lunch then at 13.00 I lay down for 20 min. I have a nap kit. I wear ear buds that block outside noise. For the first couple of minutes I listen to Tara Brach then it shuts off automatically. A sleep mask covers my eyes. A light blanket covers me. All notifications are turned off on my phone (except the 20 min alarm). Honestly, these 20 min naps feel like 3 hours. There are vivid dreams like I cannot describe. I feel so refreshed when I get up.

I consider the experiment a success. I only had one morning when I slept after 05.00, on May 4. My 20 min naps are deep, deep. After 3 weeks I wake up every morning before my alarm. I feel alert and my sleep has improved.

What Went Well

1. I feel great. My sleep feels more refreshing now than it did when I was in bed for 8 hours.

2. The quality of my work time has improved. When I start work at 07.00 I’m primed and ready to go. No distractions. Everything else is taken care of.

What did not go well

1. There were a couple of mornings where I struggled to even walk. I know this is minor on the adjustment to polyphasic sleep patterns but I went through a few days where the fatigue was great. I was sick to my stomach. My brain was telling me I was sick and should be in bed. I fought through it and now that I’m getting beyond week 3 it no longer happens.

2. Having more time doesn’t break the habit of wasting time. I’ve had a few mornings that were wasted, plain and simple. Shopping/research on the internet for a brush cutter is not getting me closer to my goals.

Subscribe to my newsletter for software developers.

Senior Developers are Getting Rejected for Jobs

About how 5 months ago I went through a screening for a job. It was a referral from a friend and it had been a while since I responded to a recruiter. I was surprised how the process has changed in the past 5 years.

After the initial phone screen they sent me to a 3rd party site (HackerRank) to solve three programming puzzles in a one hour time box. It was my first attempt at this. The first two were easy but the last one was trickier. My solution didn’t pass all the unit tests. It passed something like 8/10 tests and there was no time left to debug it.

At this point I was filtered out of the company’s selection process. It turned out to be a mixed blessing due to some health issues that came up (I could not have made the trips to HQ to get oriented). However, the whole experience planted a seed in my mind.

Since then I’ve been familiarizing myself with this type of problem solving. I work through one every week.

It’s happening all over the place

I have a good friend looking for his next job, a PhD in Comp Sci with over 10 years experience. Almost every option he explores has some type of programming challenge gate either on a 3rd party site or in person. He bought a copy of Cracking the Coding Interview to get up to speed but it takes time to develop that skill. He’s been passed over by some great companies in the meantime.

The issue came up in the Megamaker Group and one person shared this very personal response:

I’m approaching my mid 40s and left my last startup (founding CTO role) in December. I have failed at least 10 programming tests and developer interviews since then. I have been developing technology for nearly 20 years including electronics and firmware (I’m an electronic engineering technologist by training) and full-blown distributed web applications with IoT integration. I’ve created software that powers full product traceability in high volume specialized manufacturing facilities around the world. Yet, I can’t get a job as a developer because I always fail these programming test gates.

This tweet from Max Howell went viral a couple of years ago. It’s funny, sad, and true all at the same time

Creater of homebrew rejected by google
https://twitter.com/mxcl/status/608682016205344768?lang=en

Fact. There are a lot of senior developers out there that are in for a wake-up call when they try to find their next position at a different company.


Developers Hate Them

When this topic comes up some developers say …

“I’ll typically end an interview if this type of stuff shows up”

or

“Being able to solve a puzzle like that means nothing, can you talk to clients? Can you actually build a functioning webapp? Can you Google stuff when needed? Can you learn what ever is thrown at you? Not can you find the most efficient way to order this weird data”

The counter argument is that poor software developers dislike being tested and they are the ones that the company is trying to weed out. However, it’s also possible that some strong, independent-minded, senior developers opt-out of the process because they have other options.

I agree these challenges are not representative of day-to-day tasks for a professional software developer. The wording is not always the best and I’m not sure the information is always complete (or at least I don’t always infer the completeness of the information from the problem description). Often they are math word problems. Having a formal education is an advantage.

The hiring company is guaranteed to screen out candidates that would have made amazing team members. For example, when Daniel Buchmueller was turned down at Netflix…

Tweet about Netflix passing over rockstar developer
https://twitter.com/rrubyist/status/1124448304555798529

Companies Love Them

In terms of programming challenges for hiring we need to realize the the world has changed. Remote work is becoming widely accepted in the software industry. International teams are increasingly common.

You now have a larger pool of great developers you can add to your team but, on the downside, this has drastically increased the number of applications you have to sort through in order to find the right candidate. Could you imagine sifting through 500 applications for a single position?

Companies Easily get 500 applications
https://twitter.com/ideasasylum/status/1126500299470807046

In addition, I’ve heard of getting into an interview where the candidate was way under qualified (couldn’t write a hello world type program). That would be extremely frustrating. Personally, I’d be looking for the nearest exit while offering the candidate some encouragement.

Programming puzzles as a hiring gate solve both these problems. To a company it is worth skipping over a few great candidates in order to simplify the review and selection process. With a now unlimited pool of applicants they can afford to do that. The numbers suggest that there will always be more good developers in the pipeline.

For this reason I believe that Programming challenge hiring gates are here to stay and will become even more common in the future.


It is true that everyone is hiring and senior developers have never been in more demand. But don’t think that you can walk into another job based on market demand and the number of years on your resume. Prepare for the programming test gates now while you have the luxury of time.


I have a newsletter for software developers.

Host Your Blazor Client on Netlify

This week I’ve been looking into moving my blog from wordpress self-hosted to a generated static site hosted on netlify. I was literally blown away at how dead simple it is to get up and running on netlify.

Unfortunately that migration process slowed down when I started converting wordpress posts to markdown format (even with the exitwp tool), however, a seed was planted.

Later this week when I was getting started creating my first Wasm/Blazor client from the VS2019 templates I had a hunch that I could host this on netlify. Once again, it was easier than I could have imagined.

Sidebar: Blazor is changing so quickly right now. And I’m using sdk 3.0 preview 4. I’m sure any screenshots will be outdated within a week or so.

Create a Basic Blazor Client Project Using the VS2019 Template

First get the latest update of VS2019 then make sure you have the latest .Net Core SDK 3.0 PREVIEW. Enable the preview in visual studio so you can actually use 3.0. In my opinion to get the best Blazor at the moment you have to be close to the front lines.

Checkbox for enabling preview versions of .Net Core SDK in Visual Studio 2019
Enable .Net Core SDK Preview Usage in Tools Menu > Options > Projects and Solutions > .Net Core

Now install the Blazor extension for Visual Studio. This isn’t necessary to build Blazor projects but it has some handy tools like a template for creating a client-side only Blazor app.

Use Manage Extensions to into the Blazor extension for Visual Studio
Extensions Menu > Manage Extensions

Create a ASP.NET Core Application. You may have to select ASP.NET Core 3.0 from the sdk dropdown menu.

Use the New Project Wizard to create a project using the Blazor (Client-side) template.

Publish the Blazor Client Site and Upload to Netlify

You can run the project from visual studio using the run button. Do that. Then right click on the project in Solution Explorer and select Publish. Use the folder option and select a location for the static output files (I use the default location).

Use the Publish wizard to save the wasm and associated static files for a local folder.

And now the fun part. Navigate to that folder where the static files were created and drag the dist folder into the browser of your netlify account. Magic. Deployment is automatic. It even handles SSL for you.

Drag the dist folder from your publish location into the Sites page of your Netlify account.

No More Personal Scrum

It’s official from the endocrinologist. I’m a Type 1 Diabetic. Not much more I can say about that.

I’ve been taking an at home vacation for the past week. This allowed lots of time for thinking.

While rototilling the garden I listened to @swyx on the Free Code Camp podcast. I was so impressed that I went and read his essay, Learn In Public.

It triggered something in me. This guy has few of the advantages I have. No experience or graduate degree in computer science. He just started going through free code camp while he shared everything publicly. And in a few years of hard work he has an awesome job (better than mine)!


Starting today the format of this weekly developer journal entry will be changing. No more scrum sprint retrospective questions.

By and large my goals are not changing a lot from week to week. In a perfect world I am doing the same things every day and every week. Then repeat again. This is a long game and the grind is not that exciting.

What follows is something more akin to a kanban status update.

What did I accomplish this week?

Communicating who I am and what I do. I took at stand on this and decided who I am going to be. This article, almost a manifesto, describes how I’m going to be more transparent about what I’m learning and what I’m working on.

Problem solving. I obsess on these programming problems. I solve one to my satisfaction then I go away and think about it for hours. A while later I return and rewrite the solution again. Sometimes I rewrite it a third time. Ideally, I would spend one 25 minute pomodoro on this per day but it is not my nature to leave something as is that could be improved.

What are my priorities for the coming week?

  1. Write a daily review in my notebook every night during my bedtime routine.
  2. Get out of bed at 06.20 every morning.
  3. Post a new headshot on my site, twitter, github, and linked in.
  4. Build a basic project with blazor and push it to my github account.
  5. Write an article on my blazor experience/learning on Friday morning and send an update to my email list.
  6. Interact on social media after the kids are in bed (twitter, dev.to, and reddit). Always leave a comment on every article I read.
  7. Share, share, share.

Learning In Public

This week I took some time off my day job. As I was tilling our vegetable garden area I was listening to the free code camp podcast.

This particular episode featured Shawn Wang. He took the work in public concept that I’ve seen elsewhere and applied it to learning – personal and professional development. He impressed me so much that I went and read his essay titled Learn In Public.

It instantly struck me to the core.

A New Mindset

This is the logical next step of my increase in transparency for 2019. So far I’ve been publishing weekly developer journal updates that have been at times quite personal, especially when I talked about how sick I was over the winter. And how it will affect me for the rest of my life.

It also touches on why I’ve been unsuccessful blogging regularly over the past year. I tried to seem like the expert of everything. But I’m not. Some things I do know. Most things I do not know. I’m pretty good at figuring new things out. When I couldn’t make everything perfect I stopped sharing.

From now on I’ll be writing more frequently. But it will be more in the style of learning in public. More building. More incomplete repos on github. More solving programming problems. More frequent small updates. More typos. Twitter posts using the #NoZeroDays hashtag or the #LearnInPublic hashtag.

My 2019 Learning Topics

To that end I have narrowed the theme of my study and sharing for the coming year

1. Web Assembly / Blazor

I’ve been digging into javascript for a while (mostly react) but I can’t say I’ve ever thought it was the ideal solution for me to use.

I think of javascript as an old European city like London that unfolded over time. No straight roads. No clear street naming convention. Roundabouts. Charming. Unique history. Loved by many.

To me web assembly is more like a modern city built on a grid system like New York. Engineered from the ground up with a blueprint for a purpose. Not perfect. Just different.

In addition Blazor ties in nicely with Signal R which has also caught my interest.

2. Functional Programming / F#

More than a couple of years ago I had some Haskell training and it was a good experience. Then 5 years ago I was smitten with clojure, but never got into it. Today I enjoy the functional parts of C# like LINQ and I use them a lot.

This week I was reading the Stack Overflow 2019 Developer Survey results. I noticed the pay discrepancy between C# developers and F# developers. Spoiler: Clojure and F# developers have the highest salary.

Seems like it is worth looking into.

I’m back!

This is who I am and what I’m about. Please follow along with me. I hope it will enrich your work.

Figuring Out Who I Am

I did a lot of hard work this week.

I have a public speaking assignment in church tomorrow. So I’ve spent most of my evenings preparing for this.

I’ve been doing more intense tracking of food/insulin for endocrinologist appointment this week.

I filed income tax returns and I filed a GST return.

I submitted application to municipality for forgiveness of the broken water main line (if approved will cap the water overage charges at $500 instead of $2500).

We had sleep disturbances several nights due to sick children. Consequently my mornings could have been more effective.

These were all things that needed to be dealt with. No way of avoiding it. But they definitely interfered with my professional development time.

On the upside I worked out twice for about an hour (Monday and Wednesday nights after supper).

And I bought an audiobook, The Complete Software Developer’s Career Guide by Jon Sonmez. This is turning out to be much better than I expected.

Then yesterday I noticed we have a broody hen. So I found some fertilized eggs from another local farm and slid them under her last night. We can’t wait to have some chicks in 3 weeks.


Welcome. This is my own personal sprint retrospective. I use the scrum questions to reflect on my week and make notes as a developer journal entry. It is one form of working in public.

What worked well?

Problem solving. I got back on this after hearing in the career audiobook that I need to be able to dominate with these skills. I worked through 3 coding problems this week.

Leaving Comments. On 2 days I spent some time reading articles and leaving comments. Ideally I’d like do this in the evenings.

Standardizing my handle across platforms. I am now glenmccallumcan on github and twitter and stackoverflow. On linked in my profile url is /in/mccallum. I hesitate to give that one up. But maybe. In addition I have the domains glenmccallum.com, .net, .org, and .ca. I’m still resisting giving those up for glenmccallumcan.com.

Pomodoros. I found a new pomodoro timer for my phone. Way better than the browser-based timer I was using before. It doesn’t automatically start the break period for me when I’m in the middle of writing a code statement. It waits until I’m finished my thought and I tell it to start the break.

What could be improved?

Communicating who I am and what I do. I’m working through this. It takes time. I’m torn between topics I want to explore and develop as a blogging theme. C# backend work is a given. But it needs to be combined with something. On the front end I’m torn between React/React Native vs Blazor (Web assembly)/Xamarin. And then there is GraphQL and the Marten document store on PostgreSQL. Those look fun too! And linux!

Daily Review. I need to get back to this. I only did it once this week.

Project Portfolio. I also got this idea from the career book. My github account is pretty sparse.

What will I commit to doing in the next sprint?

New Headshot. Put on LinkedIn, Twitter, Github, Dev.to. StackOverflow.

New Twitter Header. New LinkedIn Header Images. Matching

Write a short standardized tagline/bio. Publish to LinkedIn, Twitter, Github, Dev.to. StackOverflow.

Attempt to do social media/reading/commenting in the evenings. Development/coding in the morning before work.

Tame my domains. Get the addresses updated to my PO Box. Stop paying the expensive privacy surcharge on my canadian domain. Look at transfering to another registrar.

Project portfolio. I’m going to push what I’ve put together for MarketGardenManager. I will abandon the commercial prospect for now. I just haven’t purseued it.

Focus Like a Laser

This week I did an inventory of my online profiles. It was surprising to see what I’m communicating about myself on each platform.

My blog subtitle is “C# | .Net Core | Docker | Linux”. The about page on my blog I talk about C# on linux. On twitter my profile says #javascript and #aspnetcore. On dev.to my profile says I like deploying .net applications on linux. My github account has my responses to practice programming interview questions. LinkedIn, I can’t even remember, probably enterprise healthcare experience from a previous life. The list goes on … Stackoverflow, Reddit, Hackernews, ProductHunt … how do you keep track of all these accounts?

My most successful blog articles are (1) using C# with PostGreSQL(in docker) and (2) setting up a reverse proxy with https(in docker) for hosting .net core applications. Last year started developing this C# Side Hustle idea but not even really sure what that means in my own head; it feels cheesy. I spend a lot of my professional development learning time on javascript/react. In 2019 I’ve mostly written about personal stuff in my developer updates, like getting diabetes. Still dealing with that.

Conclusion. The message that I’m communicating about myself is diluted and fuzzy. It need more focus.

In addition I’d like to start sharing a glimpse into my personal life, like a twitter post on the weekend. This is hard when you’re an introverted, private person. It may start with my backhoe. I bought a big, old backhoe last fall. It is becoming integral to whatever I’m working on every weekend. From cutting firewood to fixing a broken water main. The world is my sandbox.


Welcome. This is my own personal sprint retrospective. I use the scrum questions to reflect on my week and make notes as a developer journal entry. It is one form of working in public.

What worked well?

Mornings. 6.20 helped. The extra 10 minutes to get oriented was great. I didn’t notice to much of a reduction in sleep stats. Although I slept in on the weekend so I had a chance to catch up.

New Blog Template. 2019 for WordPress. The font is much nicer. I like the column width. Still not quite what I’m after but good enough for now.

Leaving Comments. I’m doing it. If I read an article I leave a comment.

What could be improved?

Communicating who I am and what I do. I’m working through this. It takes time.

What will I commit to doing in the next sprint?

Consolidate/Standardize Online Profiles. I need to decide where I am going to exist online then do better at maintaining my presence.
1st tier: (handle glenmccallumcan, small profile pic, large action pic, short bio, long bio):
– LinkedIn
– Twitter
– github
– dev.to (I’m considering this one)

2nd tier (same handle. no profile pic or bio.):
– respond to comments only. no posting.
– reddit
– StackOverflow
– Hackernews

Rewrite ‘About Me’. I’m growing from a developer who just wants to share a few things professionally to someone who is taking on projects. the writing on my personal site needs to reflect this.

Taking on Projects

Life is funny.

I was very sick all winter. I started losing a bit of weight last October then dropping rapidly in December. Each time I looked at the scale 1-2 lbs was gone. I was so tired, sleeping all the time. Christmas break doesn’t exist in my memory. I was drinking over a gallon of water per day and barely functional by the end of February. As you know if you’ve seen my recent posts, I have diabetes. Not a surprise to anyone who is remotely familiar with the symptoms.

Being out of commission for over 3 months I missed some things that happened on the farm. The biggest problem was the water main leak which has me facing a huge bill. Combine that with some new medical supplies in the thousands and I’m feeling pretty desperate.

So last week I reached out to my friends and told them I’d be interested in projects; anything I can do to provide value and earn some additional funds. They put it out to their network and I’ve had some great responses. Any of these options would be fantastic projects to work on with developers I’m excited to collaborate with.

I feel much gratitude this morning. Without these hardships I wouldn’t be in a position where I’m exploring some neat opportunities.

Welcome. This is my own personal sprint retrospective. I use the scrum questions to reflect on my week and make notes as a developer journal entry. It is one form of working in public.

What worked well?

Strength Training. I did solid workouts on Monday and Wednesday at lunch break. Calisthenics. Friday I missed because I had to run an errand downtown but I forgive myself. Saturday was a full day of stump ripping and ditch digging to do the water main repair. I more than made up for the missed workout.

Getting over shyness. This is a genuine struggle for me. Putting anything out in public is like pulling my own teeth. But I believe you have to be your own media company to make any real career progression these days. You have to show the world what you know. To this end I’m creating a presence on a few more tech communities.

What could be improved?

Mornings. I need to face facts. My mornings have changed. I need more time to check blood glucose, etc.

Reading Books. When you’re an introvert learning is a form of hiding. I need to do more sharing and less learning. However, some reading and learning is good.

What will I commit to doing in the next sprint?

Mornings. Prepare my breakfast the night before. Get up 10 minutes earlier at 06.20.

New blog template. The template for my personal site drives me nuts. I don’t like the way the text runs all the way from one side of the screen to the other. I need to find something that better reflects me.

Personal Brand Development. Who am I? Who am I not? What do I share? What don’t I share? I’ve never really thought through this.

Rewrite ‘About Me’. I’m growing from a developer who just wants to share a few things professionally to someone who is taking on projects. the writing on my personal site needs to reflect this.

Consolidate/Standardize Online Profiles. I need to decide where I am going to exist online then do better at maintaining my presence.
1st tier: (handle glenmccallumcan, small profile pic, larger action pic, short bio, long bio):
– LinkedIn
– Twitter
– github
– dev.to (I’m considering this one)

2nd tier (same handle. no profile pic or bio.):
– respond to comments only. no posting.
– reddit
– StackOverflow
– Hackernews

Article on ‘Docker Files for a React Client with a .Net API’. This one is just dying to come out of me.

Read Books. Test-driven laravel by Adam Wathan. Testing Javacript by Kent Dodds. I’ve heard good things about both of these. I want to read them and see what I can apply to c#. I realize this contradicts what I said above about using learning as a form of hiding but I believe some learning is necessary.

Leave Comments. If I read an article anywhere on the web I will leave a comment.