I'm Khalil Stemmler.
I'm a Developer Advocate at Apollo GraphQL.
I'm also a Canadian software developer, writer, and (ocassional) musician living in the Fashion District of Toronto, Ontario.
If you have any questions for the blog or you'd like to arrange for a speaking engagement, I'd be happy to meet up and chat Apollo, architecture, TypeScript, or DDD. Feel free to send me an email or ping me on Twitter at @stemmlerjs.
The goal of this blog is to:
Help developers write testable, flexible, and maintainable TypeScript & Node.js.
Now that you're here, you can find a lot of content on:
- Software Design and Architecture best practices
- How to use Domain-Driven Design to build complex applications
- Enterprise Node.js & TypeScript patterns
- How to organize your code and get more done, faster
- Web development tutorials & my opinions on when it makes sense to use tech
- Software design jargon, but explained as if I'm speaking to a friend
- ...and you'll also find an increasing amount of content on developer productivity with GraphQL + Apollo.
- won't tolerate writing any more buggy production code
- want to learn how to write maintainable, testable software
- want to fast-track their way to senior-level roles
- want to learn how to model complex object-oriented software with Node.js
In 2017, I co-founded (an unsuccessful startup called) Univjobs and learned a lot about making large Node.js codebases scale.
At some point during my work as a consultant and reading as many books on software as I could digest, I came to realize that there were a lot of pitfalls I could have avoided if I knew the patterns and principles to guide me.
I'm currently working on a couple of projects in addition to my work at Apollo.
- is continuing to answer questions and blog about whatever you're curious about.
- is solidbook.io - The Software Design and Architecture Handbook with Node.js and TypeScript.
- is the Domain-Driven Design course with TypeScript.
- is doing the engineering for my buddy Eric from FoundersBeta on an awesome realtime online job fair to get into startup companies
I hold both a Bachelors Degree in Computer Science from Brock University after a few years of playing with robots, writing LaTex papers, and struggling with math.
I also have a fancy Diploma in Internet Communications Technology from Sheridan College after a few years of learning how to configure what happens after your packets leave your home router.
You must really like me if you've read this far 😇
I've been writing/recording (and ocassionally performing) music for about 16 years. Will happily chat your ear off about the golden eras of post-punk and hip-hop. Here are a few more selected works:
- "College Songs" - highly recommend starting here ⭐. A playlist of some of my best work from 2013-2017.
- "Bad Faith - EP". An in-progress goth-pop EP about Existentialism. It is influenced by ideas from Jean-Paul Sartre, Albert Camus, Simone de Beauvoir, and the hypnagogic recording styles popularized by Ariel Pink and John Maus.
- "Imperfect Picture". Trip-hop, electronic? I found several ol-timey video clips and worked them into this one.
- "Mind Your Own", from a post-punk album I made in a basement in 2017.
- "2:35 AM", a short that I scored the music for. By Turcin Soylu. (Audio seems a bit bass-boosted unfortunately).
- "Riot". Noise rock + trip-hop kind of vibe. Sampled old funk breakbeats and Sonic Youth. This is normally the kind of thing that comes out when I sit down to make something.
I wrote a piece specifically about why I'm drawn to brutalism in art, design, and music. You can read it here.
When I'm not coding or reading excellent software books (which I really must compile a list for), I write, longboard, and jog around town 🏃.
Stay in touch