Next week, a champion

A project champion. At work. This is a short essay of my feelings right now.

Hey all,

I've just been presented with an opportunity at work to champion an exciting project and because I started feeling a bunch of things right away, I wanted to write them down and share them with you. Enjoy this random essay!

Let's start with some context. I work at Shopify, a company that started in the business of providing online stores for entrepreneurs that has since expanded its offering to 100s of other interesting areas of commerce. The company's mission is lofty: to make commerce better for everyone. I have that as a pennant flag stuck onto my wall:

No, that thing ain’t free even for employees. I just buy into the mission, so I thought why shoudn’t I buy the flag too from our internal merch store?

Checking LinkedIn tells me that I've been working here for a bit over a year now. I'm a software developer. But so far, I've not yet led a project from inception to completion. I've been contributing to projects but never "championing" one. This is all about to change.

My early days at Shopify

When I first started working here, I felt very much like a fraud. Imposter syndrome overcame me for weeks because I was rusty as a developer when I applied for the job, having come from a non-developer role at my previous job. That previous job involved building software but it wasn't the main job. So you can imagine how surprised I was that I managed to pass the interviews (I prepped a lot during my parental leave!) to land the offer.

Anyway, I found that while I swam in an ocean of doubt, what was most helpful for me was to NOT focus on shipping code right away. I wrote a Medium post that to summarise what I meant, which I entitled Don’t ship code in your first 30–60 days. Not everybody agreed, but it helped me a lot to gain confidence in my first 2-3 months at this big tech company.

Instead of brushing up on my coding, I focused on gaining context on how the company runs, what the founder and leadership team value most in the company, and in general, trying to understand what the implicit social contract was here. It was wetware, not software, focused.

So, 2 months later, I felt roughly onboarded and had context. The next thing I did was to re-learn Ruby (the main programming language used at Shopify) and Rails (the framework we use to build stuff). I tried a few ways of learning like reading books, building mini-projects outside of work, and finding manageable tasks I could take on at work. The last way was the most helpful, I think because I could consult my teammates any time I wanted. You gotta be a little thick-skinned to do this, even if you don't ask very often, but I highly recommend it!

Fast forward about 12 months later, after contributing to 2 web projects for our Point of Sale software, I am here, purportedly about to be handed the glove to championing my own project.

Becoming a champion

So... what now?

What should I expect?

How am I feeling?

What worries are beginning to fill my mind?

Am I ready for this?

Let's get into the specifics together.

Before proceeding, here’s another bit of context I haven't mentioned but think is pertinent here is this: my title in the company is "senior developer." At this level, the job entails not just knowing how to write code well, but also being able to lead projects and see them through. I take that to mean that I'm supposed to:

  1. understand a medium to large-ish problem deeply
  2. have enough technical knowledge to be able to even conceive of various potential solutions
  3. wrangle complexity and break up the problem into manageable, chunkable pieces of work that collectively solve that problem
  4. write English well to communicate effectively with stakeholders
  5. have good project management skills to keep things moving forward

1 - okay, I got this.

2 - hmmmmmmmm. I think I know enough to be dangerous, but I’m going to need help.

3 - okay, I got this too.

4 - I got this one.

5 - I got this too.

I’ll talk about number 2 later.

For now, let’s talk about feelings.

I'd describe how I feel right now as a mixture of excitement and mild apprehension.


I'm excited because, wow, I'm going to be able to build something foundational to our Point of Sale product! It's work that is going to enable cool new useful features for the thousands in the retail sector who are already using Shopify POS.

Point of Sale · Shopify Help Center
That right there be Shopify POS

I used to work as a floor staff at a Kate Spade Saturday store in a mall in Singapore, and when there wasn't much to do, I would fiddle with their iPad with the POS software and have opinions on how to improve it. Now I'm actually going to be able to do that, from the driver's seat!

Sounds very cool, right?!

But... But.

You see – and I'm only realising this right now – I'm already romanticising this shit.

I can't divulge what I'm going to be building as part of this upcoming project, but what I can say is that it's a lot of backend work, and the desired outcomes are already crisply cut out for me. I'm just supposed to come up with various ways to get there, consider and mitigate risks, and deliver those set outcomes.

So to be more accurate, I'm excited, but not because of what I just said about being able to turn my opinions into new features. It's more like I'm excited because I'll get to prove to myself (and hopefully to my peers and the leadership team) that I can be given more responsibility and execute them well to deliver value to our customers.

And even that is not getting at the source of my excitement. If I think about it, what I'm actually excited about is A SINGLE THING: personal growth.

Growth in professional skills. Growth in career stage. Growth in juggling responsibility at work with living a good, balanced life outside.

When I was in university, I applied for a job as a barista at a campus cafe. On my first day, perhaps during a bit of a high of being on a new job, I told my manager while I frothed a jug of milk for a cappuccino:

"I'm the kind of person who learns things quite quickly, and when I know something relatively well, I'll get bored and soon, I'll want to be doing something else."

That manager told one of the other cafe staff, who later told me, that he finds me cocky and that he didn't like me because of that. So, I wouldn't recommend telling your manager this. But I have to say, this still rings true of who I am. (The "learn quickly, bored, wanna learn something else thing," not the cocky thing, hopefully.)

In that way, I'm a little like this guy who founded Patagonia:

I'm not sure what that says about my future as a developer, but I have a point for bringing it up and it is this: I'm getting comfortable being a contributor to a project, and now is probably a good time to switch gears with a new challenge, like championing a project in an organisation with many moving parts.

Which brings me to the other feeling.

Apprehension, meet ChatGPT

Earlier I mentioned that I think I’m supposed to, among other things:

2 - have enough technical knowledge to be able to even conceive of various potential solutions

To which I responded:

hmmmmmmmm. I think I know enough to be dangerous.

Yeah, that’s where my apprehension comes from. At this point in my programming journey, I’m only confident in saying that I know enough to be dangerous. Is that good enough for a project champion who needs to work beyond the level of a single, well-defined task?

My hunch is yes, but a nagging feeling tells me that maybe I will make technical mistakes. A few things that should mitigate these:

  • Our internal Get Shit Done framework’s baked-in review process will help me have people more experienced and technically sophisticated than me detect some of these. — This should catch some, but not all, potential mistakes because people are busy and I’m going to be the project champion who will spend more time and have more context on the project than anyone else.
  • ChatGPT may be able to proofread some of my notes and technical design and help me detect potential problems early. It may be able to send me in some direction if I have a suspicion that something might go wrong.

So yeah, this is why I have mild apprehension about my readiness to champion a project. I know that I know enough to be dangerous, but that also means I may not know something ahead of time that may become a problem. The technical review process should help. And ChatGPT should help. I just don’t know if those things will cover all my blindspots.

But, finally, I shall assure myself that if I do make some mistakes as part of this project, it is OK. I’ll fix the problem and learn from it. Put to the test how much we mean it when we throw around terms like “fail forward.”

So... am I ready for this?

Hell yeah! Let’s goooo!!

Subscribe to Nick's Notes

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.