Franklin Barbecue is one of the best-regarded barbecue spots in the country. A few years back, my wife and I took a trip to Austin, with one goal being to get some of the world-famous smoked meat. Like a lot of best-in-class spots, one doesn’t merely walk in and get some food (I’m looking at […]
Last week, the tech leads in Atomic’s Grand Rapids office got together to share professional development interests and brainstorm opportunities for 2020. Atomic has sponsored employee professional development since its beginning, including an internal conference (“Atomic Con”) and funding for conferences, certifications, classes, reading groups, etc. This year, the Grand Rapids tech leads wanted to […]
Tech leads and developers have a vital role to play in the design of software. But with training in the abstract world of programming, many of us lack the vocabulary to provide useful critique on, say, the aesthetics or accessibility of design. Sure, we can share our feedback as people who may use it, but […]
Every project falls somewhere on a spectrum between extremes of short-term, get-it-done-ism and eternal, future-proofed longevity. Unfortunately, while you may have a ballpark sense for where a project fits on this spectrum at the outset, each user story needs its own consideration. Working out the right tradeoffs for each of these stories is the project.
On a current project, we wanted to hoist page state out of a useReducer hook into a query string of the URL. We saw this as a continual need for the project going forward, so we wanted a convenient way to build new pages that stored their state in the URL’s query string. To do […]
For the last few years, we’ve been using a universal TypeScript platform including TypeScript, GraphQL, React, and Express. Having TypeScript on both the client and the server (including command-line utilities and background worker processes) has transformed how we go about ensuring the quality of the software we build. When compared to other stacks we’ve used, […]
Early in my career, I prided myself on my technical skill. I was pretty fast at writing pretty good code. I conceived more efficient algorithms more quickly than many of my peers. I took creative approaches to expressing ideas in code that were at least interesting, if (with the benefit of hindsight) not necessarily as […]
Your backlog is an imperfect, always changing, self-fulfilling prophecy for how your software will be built. Not only that, but at a software consultancy like Atomic, it’s also a prophecy for how the engagement will end and deliver on your brand promise. All this to say: Tending to the backlog is one of the most […]
I'm super excited to be giving a talk about TypeScript at Strange Loop this year! The talk, “Understanding TypeScript's Structural Type System,” covers some of the deeper and most exciting ideas at the heart of TypeScript's namesake feature. You can get an overview from the slides. (I'll post a link to the video once it's […]
Successful product delivery requires us to navigate overlapping, competing concerns across a broad spectrum of execution dimensions, all tied together via our tech lead role. This role is complex and multifaceted, requiring the people who hold it to balance a variety of needs and interests.