Navigating Your Software Development Career

When I started my career as a developer I soon found that no one around me was going to cause me to grow.

I had to take ownership of my career and growth.

Navigating Your Software Development Career is an e-mail newsletter where I'll answer subscriber questions and offer advice around topics like...

  • What are the general stages of a software developer?
  • How do I know which stage I'm at? How do I get to the next stage?
  • What is a tech leader and how do I become one?

Blog Posts

How To Stand-Out Among Your Peers As A Software Developer

I started my career working for an organization that was building a platform for vehicle manufacturers to consolidate and run analytics on their sales.

I started off having to use technologies and frameworks I had no experience with yet (ASP.NET, T-SQL, etc.)

For the first few months, I felt overwhelmed.

I took forever to do simple things like adding a checkbox to a web page that would get stored in the database!

Maybe you’ve been there too!

[Read More]

The Importance Of Solving Real-World Problems

Being a software developer is much more than simply knowing everything about mastering programming languages.

You need to know how to deal with people, understand how software is best built from a high-level, best practices and trade-offs between them, etc.

We’ll look at a question I received from someone who is struggling with the fact that he just graduated from university - but has no idea how to apply everything he’s learned to solve real-world problems.

[Read More]

James Hickey's 2018 In Review And Beyond

Taking note of your past year’s achievements is very helpful in motivating yourself and also having a clearer picture of whether certain activities you did or tried actually had the outcome you hoped for. For example:

  • Did the SEO tactics you made to your blog increase your blog’s traffic?
  • Did your resume overhaul cause any improvements to how often you get asked to interview?

Stuff like that.

I want to go over some of this past year and let you know what changes I made that really helped me out personally and professionally.

[Read More]

What Is .NET Core? (What Makes It So Special?)

With all the buzz around .NET Core I figured that I should tackle some of the fundamental issues that make .NET Core a gamechanger.

.NET Core really is the next generation of .NET development and I believe that it’s time for .NET developers everywhere to migrate!

[Read More]

What I've Learned So Far Building Coravel (Open Source .NET Core Tooling) - Part 1

One night, about 4 months ago, I had a couple hours of free-time. I was really enjoying the benefits of building apps with .NET Core. But I felt it was still missing all the “built-in” features that makes Laravel (PHP Framework) such a breeze to work with.

After all, I just want to build awesome apps and not tinker with the same old boilerplate stuff.

What if I just want to schedule my code to run once a week? I don’t want to configure Windows Task Scheduler. Or Cron. I just want to tell my code to schedule itself. Shouldn’t that be easy to do (like with Laravel)?

[Read More]

Keeping Your ADO Sql Connections Safe

What happens when you don’t close your .NET SqlConnections? Bad stuff. Bad stuff that will inevitably bring your IIS website crumbling down to ashes. Well… something like that. We all know that we should take extra care to always close our DB connections. Right?

But what happens when developers try to get fancy with their DB connections and focus more on being able to re-use open DB connections rather than being safe? Well, the consequences were bestowed upon me a few weeks ago.

Let me explain (briefly) what happened, what could happen to you, and a way to fix it - while maintaining the flexibility of re-using open DB connections and being able to safely use DB transactions from your C# code (using ADO).

[Read More]

C# Pattern Matching: Are The Official Docs Lying?

During my day job, I had a case where I needed to use some pattern matching to do some type checking. If you don’t know, pattern matching in C# allows you to test the type of an object and perform some additional “magic” at the same time. While having the chance to play around with this feature some questions arose from my usage.

[Read More]