bash — dotnet run --project ./portfolio
tom@prod-server:~$ git log --oneline | wc -l
4,872 # commits. Yes, most are "fix build"
 
tom@prod-server:~$ dotnet --version
8.0.101
 
tom@prod-server:~$ cat /etc/motd
WARNING: If it compiles, ship it. — Ancient .NET Proverb
 
tom@prod-server:~$ ./hire-me.sh
Exception: NullReferenceException — 'work-life-balance' was null
at TomKnox.Career.FindBalance() in passion.cs:line Infinity
 
tom@prod-server:~$
Available for hire · uptime: 8 years, N months

Senior .NET
Developer.
No, I can't fix
your printer.

// TODO: write compelling bio  |  C# · ASP.NET Core · SQL Server · Azure · Imposter Syndrome

System.ProductionException: Tom pushed to main directly at 4:58 PM on a Friday. Stack trace points to Deadline.cs. The on-call engineer has been notified and is currently not answering their phone. Estimated rollback time: Monday.

// namespace TomKnox.Skills

What I Actually Know

C# / .NET 8
// could write LINQ in my sleep
ASP.NET Core
// minimal APIs ftw
SQL Server / EF Core
// SELECT * considered harmful
Azure / AKS
// everything is serverless until it isn't
Unit Testing
// tests pass on my machine ✓
Docker / K8s
// YAML archaeologist
Microservices
// 400 services. 0 explanations.
Explaining to PM
// "no, it's not a small change"
CSS
// don't ask me to center a div
Estimating Time
// multiply by π and pray

// public IEnumerable<Job> GetHistory()

Career { }

Feb 2024 – Present · 2 yrs 3 mos · Remote
Lead Software Engineer
// Student Choice · Full-time

Microsoft Azure C# .NET SQL +3 skills
Jul 2022 – Feb 2024 · 1 yr 8 mos · Remote
Software Engineer III
// Student Choice · Full-time

Microsoft Azure C# .Net SQL Blazor +3 skills
Sep 2021 – Mar 2023 · 1 yr 7 mos · Little Rock, AR · Hybrid
Software Engineer
// Priority1 · Full-time

Microsoft Azure C# .Net Vue.js +3 skills
Aug 2019 – Sep 2021 · 2 yr 2 mos
Software Engineer
// Brewer Enterprises, Inc. · Full-time

C# .NET Survivor Bias

// StackOverflow.GetContributions(userId: 4829104)

My Greatest Contribution

⬆ Stack Overflow · Reputation: 847  (mostly from one answer in 2019)
How do I fix "Object reference not set to an instance of an object" in C#?
Asked 2019-03-14 · 1,284,910 views · Tagged: c# · nullreferenceexception · .net
Accepted Answer ✓ — by tom_k (rep 847)

You have a null reference. Something is null that shouldn't be null.
Check what's null. Make it not null.

if (thing != null) { thing.DoStuff(); }

If this solved your problem please mark as accepted.
Edit: No, I cannot debug your specific code in the comments. No, not for a bounty either.
▲ 6,204 upvotes  ·  This answer has been referenced in 47 other questions, 12 blog posts, and one CS dissertation.

// public List<Review> GetSocialProof()

What Colleagues Say

★★★★★

"Tom is the only developer I know who reads the actual documentation instead of just copying from Stack Overflow. Honestly, a little unsettling."

William Y.
// Engineering Manager · Hypercorp Solutions
★★★★★

"He told me my 'quick question' would take three weeks to implement. I didn't believe him. It took three weeks. I believe him now."

Oliver P.
// Product Manager · person who assigns 'quick wins'
★★★★☆

"Tom's code reviews are thorough. Some might say intimidatingly thorough. I cried once. It made me a better developer. Four stars."

Henry W.
// Senior Dev · now cries 40% less
★★★★★

"I asked Tom how long a task would take. He said 'it depends.' That was 18 months ago. I now know he was right and I was an idiot."

James K.
// Architect · reformed optimist

Let's Build Something
That Won't Need Hotfixes

// Available for senior .NET roles, architecture consulting,
// and politely explaining why that estimate is not realistic.
// Response time: O(1) · unless it's a meeting that could've been an email

🔴 Unhandled Exception
System.NotImplementedException:
'work-life balance' has not been implemented.

at TomKnox.Life.GetBalance()
in GreenTea.cs:line 404
Inner Exception: CaffeineDeficiencyException
"It is 9:47 AM on a Monday."