I don’t know how things go with other vendors in the mechanical keyboard community, but here’s a rundown of how my days normally go.

Like a lot of other vendors, it’s mostly a one-man show here at  Keebio. I think the perception out there from what I read is that most keyboard stores have a number of people running them. The reality is, it’s usually just one person doing all the legwork.

I design PCBs and cases myself, buy parts, answer customer service emails and messages, pack and label orders, check inventory levels, assemble custom builds, hack away on QMK, etc. I usually can’t get to everything I’d like to do, so it’s a matter of picking what tasks are important.

Most of the tasks involved with running Keebio, I currently handle all of these.

So here’s an example day:


Wake up. I’m definitely not a morning person, but I have to take my oldest of 3 kids to school every morning, so I relent to the noise of the alarm on my phone and get up.

While brushing my teeth, I’ll check my phone to see if anything interesting happened overnight, like new orders coming in or customer service emails. Maybe I’ll check  /r/mk  to see what’s going on. I know, it’s a bad habit, but I do it anyway.

After I’m done getting ready, I go downstairs to make breakfast and pack lunch for my son. Typical life stuff, nothing too interesting.


Time to leave for school. After dropping my son off, I’ll fire up a podcast like  The Board Podcast,  Top Clack, or the newcomer  KeebTown, if I haven’t finished those off yet. I stopped listening to regular news on the radio several months ago, as the news is always depressing in some way. I’d rather hear about some cool stuff that makes life better.


I’m back home. Got to get breakfast going for my other son. He’s the one on  my Instagram account  sometimes, messing around with my boards and switches. He’s thrilled whenever I get a new package in the mail with keyboard parts. My older son has zero interest in keyboards and looks at me as if I’m crazy for having such a hobby. He’s probably right.

If there are some easy orders that can be filled, I’ll knock a few of them out and add them to the big box with any packages I packed the night before.

Toddlers love mechanical keyboards.


I head out to work at my normal job. You know, a real job, because being a vendor by itself doesn’t pay the bills (yet). I do enjoy my work as a software engineer, as I work on a product I can stand behind and there’s a lot of interesting tasks to handle. Luckily, I work right next to the post office, so I drop off the packages there each morning.


I get into the groove of work, morning meeting, etc. Slack and Discord are up and running, with Slack for more professional communication and Discord for keyboard discussion. I find myself quitting Discord often to keep from being distracted by it, but will open it up again sometimes. I’ll check  /r/olkb  from time to time to answer various technical questions.

I typically get several emails during the day about various Keebio inquiries via a help desk system, but unless it’s something I can answer in under a minute, I push it off until later. To be honest, I’m bad at this sometimes. Like really bad. Later often becomes ‘much later’.

Queue of messages in the help desk system.

I try not to let questions via email go unanswered for more than a week, but I don’t always find enough time to clear out the queue. If you happen to email me, and I don’t respond in a timely manner, feel free to bug me again. Don’t feel bad if you have to prod me 3–4 times. Technical support questions about builds are usually tough to debug, and I still need to invest some time into improving documentation and troubleshooting guides.

If I’m feeling a bit stressed out or need a break, I’ll fire up the soldering station at my other desk and spend a few minutes on whatever board needs attention. Or maybe load up KiCAD and briefly work on one of my crazy PCB ideas. I do need to cool off on the new product ideas though and just focus on the current designs I have.

Soldering station in my office.



Head out to pick up the kids. I’m fortunate that there’s not much traffic where I live, and I can get from place to place quickly.


Get home, get things ready for dinner, play with the kids, etc. Typical life activities again.


Get the kids to bed, clean up around the house, take out the trash and recycling, wash the dishes, shower.

Keebio time begins:


Now I can actually work on Keebio stuff! Usually, I can only pick one out of the following to do each night: pack orders (typical night), reply to messages and emails, work on PCB designs, or order more PCBs/cases/parts.

On a packing night:

I print out all the order slips for unfilled orders and pick out the simpler ones to do, it helps to do the easier ones first to get the ball rolling. I’ll fire up some music to get into the groove of things or a podcast like  How I Built This. I love listening to How I Built This, as I can relate to the grind that all these people go through to make their businesses work.

Stack of order slips.

At most, I’d like to pack about 15–20 orders a day, as that tends to be manageable with everything else going on. Any more than that starts eating away at the limited amount of time I have to sleep. The most I’ve packed and labeled in one night was about 50, and that was going from 10pm til 2am.

Packing area

Inventory night:

From time to time, I’ll check the inventory levels of various items and see what needs to be reordered, whether it be PCBs, cables, components, etc. Admittedly, I don’t always plan things well in advance, and recently with Chinese New Year, I was left with being unable to replenish stock for a few weeks. Something for me to work on. It wasn’t until recently that I set up notification alerts for myself when inventory is running low.

Customer service night:

For a while, I offered full assembly service for the kits on the store and received many inquiries about it. This takes up a lot of time, generating quotes, calculating costs for extra items like switches, checking case inventory, etc. Given my tight schedule, and limited time for coordinating builds, I had to discontinue service.

I get a fair number of requests for diagnosing build issues. This is the portion of handling the CS queue that can be tough. While I’ve seen many issues first-hand with builds and can fix them, it still takes a decent chunk of time to go back and forth with someone to figure out what the issue is and create screenshots of fixes. For anyone with build issues, it’s usually best to post on  /r/olkb, as I hang out there along with several other experienced builders. You’re more likely to get a prompt response through there.

I can easily see how with other vendors in the community, there will be a delayed response. While a response may take 5–10 minutes to craft, when you multiply that out with a dozen or so messages and emails a day, it adds up.

1–2am — Bedtime:

If I’m really tired, I might pack 5–7 simple orders and just go to bed at midnight. Sometimes, I’m too worn out from the day to pack and let it queue up for the next day.

I’ve spent plenty of nights up really late, and it does take a toll at some points. Not too long ago, I messed up a series of kits by supplying the wrong size of standoffs. In my tiredness while packing, I had forgotten that a particular kit used taller standoffs. I could definitely use some more sleep.

Things to work on:

I’ve been planning out how to reduce my workload to a level that’s more manageable on a daily basis. Some of the things I’m working on:

  • On-board controller for PCBs: Less time needed to deal with packing components and troubleshooting Pro Micro issues
  • Packing help: I have enlisted some other people to help pre-pack certain kit items for me to make packing orders faster
  • Better documentation: With better docs, less build issues and questions
  • Better product status page: Less status questions to field

Want to be a vendor in the mechanical keyboard community still? By all means, go for it! I’ve worked with a lot of great people in this community, and we’re all very supportive of each other and are willing to help out. In the end, we’re all about bringing awesome products to everyone, and there can never be enough new stuff for people to play with.

Recent Developments:

(February 26, 2019): I had been planning on writing an update post on how things have changed since I’ve written this post. But seeing how busy I am still, I’ll just add on to this one.

First off, I get to sleep earlier now, as I’ve done a couple of things to reduce the amount of stuff I do each night. Instead of washing dishes by hand, which I enjoyed because I could listen to podcasts or watch some show while doing it, I’ve passed those duties on to a brand new dishwasher.

The larger change is that I have a part-time employee kitting items and fulfilling orders. Training someone up on doing this took quite a bit of work, as it forced me to systemize certain tasks, instead of keeping everything in my head. The downside of being less hands-on with packing parts is that unless your employees are keyboard enthusiasts, there are going to be errors in the process, like incorrect parts put into kits or wrong items packed into orders.