Matt Makai - Python web dev & Twilio Developer Evangelist.

@mattmakai on Twitter & GitHub

My Typical Day As A Developer Evangelist

"What is a typical day like?" is one of the most common questions I receive about my gig as a Twilio Developer Evangelist. This blog post explains how I schedule my calendar when I'm in Washington, D.C. on work days.

Daily Structure

Throughout the past year on the Twilio crew I've learned that my secret to keeping happy and productive is to impose regular structure on my days. Here's how my typical non-traveling weekdays are set up.

730-am(-ish): wake up, write & code

We engineers know that uninterrupted quiet time is the only way to effectively code. My uninterrupted time comes in the morning hours between about 7am until noon. These hours tend to be productive since I'm fortunately one of those weird morning people who wakes up with a refreshed mind that's ready to go. Morning hours also work well for focused tasks because our headquarters in San Francisco is three hours behind D.C. so I know I won't have to take phone calls or answer emails from the West Coast until they come online.

Most mornings are a combination of coding and writing. Since I do both activities in Vim they have a similar creative flow. Many of the open source projects I work on also go along with a blog post so writing and coding tasks often overlap. For example, I programmed the Choose Your Own Adventure Presentations Flask web app while writing the content for the code walkthrough blog post.

The simple desk with external monitor I use to work from home

During the morning hours I often work from the desk in my apartment (shown in the picture above) or from a coffee shop such as Busboys and Poets or Compass Coffee.

930am: gym time

I make time to workout every day. Invariably one day per week I will have a breakfast meeting, need the extra hours or just plain not feel like going to the gym. That's the day I skip each week.

The Developer Evangelist role can be tough on your body if you don't take care of yourself. When you're traveling it can be hard to work out every day. That's why I ensure a workout happens just about every day I'm not on the road.

11am: continue coding & writing

As soon as I get out of the gym I head home and get back on my laptop. I find my mind tends to subconsciously chug through coding and writing tasks while I'm working out. If I was stuck on a bug or a paragraph earlier in the day I find I can often solve the problem immediately after my workout.

Noon: shower, lunch, head to coworking space

Eventually my day slides into interruption mode. Occasionally it begins with a lunch meeting where I need to scoot across town to catch up with someone. If I do not have a lunch meeting then I usually grab lunch from Sweetgreen, Chiptole [1], or SUNdeVICH and take it to my coworking space.

Afternoon: interruption activities

From lunch through the afternoon I have what I call "interruption activities" where I bounce from one thing to another. These activities are reading and writing emails, phone calls, Google Hangouts, in-person meetings, code reviews and generally responding to requests that come in from teammates and the external tech community.

During the afternoon I work out of my WeWork coworking space in the Shaw neighborhood of the District. You can see my typical WeWork hot desk set up in the picture below.

WeWork coworking space spot

Around 2-3pm my mind will often start to wander so I take a walk, catch a quick nap or read up on (mostly mindless) tech news via Techmeme or Hacker News to catch a breather. Then I'll get back to the interruption activities and get prepped for any evening events I have on the calendar.

Evening: tech meetups

When I'm in D.C. I attend on average 1-3 tech meetups a week. Meetups are clustered on Wednesday and Thursday nights although there are a few good ones on Monday and Tuesday evenings as well.

Attending meetups isn't about just sitting around listening to a presenter. You get out of events what effort you put in. It's important to engage with your peers and learn more about what they're working on. I'm fortunate to have many great friends in the D.C. tech community who I've come to know through these tech events. Meetups are a fun way for me to catch up with them on their latest work and open source projects, learn how I can help them out and discuss programming resources.

I'll often help meetup organizers find space to host their events and sponsor food via Twilio funds. I occasionally perform short live coding demos with Twilio that are relevant to the audience. For example, at a DevOps-focused meetup I'll show off text messsage notifications from an Ansible playbook using the Twilio module. Other times I'll speak on a programming topic or give a coding workshop like the one for Women Who Code DC pictured below.

Twilio workshop at Women Who Code DC

I attend a range of tech meetups but my three favorites throughout 2014 were:

  • DC Web API Group where technical and non-technical folks coexist peacefully and learn from each other (yes, seriously it's an amazing event)
  • DC Continuous Delivery for covering a range of practical DevOps topics (I'm also the co-organizer of this group)
  • DC Hack And Tell for its constant stream of fascinating software and hardware hacks (shown below is Travis Hoppe presenting at the December meetup)
DC Hack And Tell meetup picture from December 8, 2014

Over time I've found that the worthwhile tech community events in D.C. focus more on software development and less on entrepreneurship topics. Therefore I prefer to attend meetup centered on programming languages, frameworks and software development topics over "startup-ish" drinking events.

Ad hoc Activities

That's a peek into my average non-travel day. I accommodate unscheduled events, calls, meetings, doctor's appointments and errands as they come up but try to stick to this formula as closely as possible. The rigid calendar creates normalcy in what could otherwise be a very unstructured lifestyle.

For more information on life as a Developer Evangelist, check out these fine posts:

[1] burrito bowl, veges, double chicken, pico de gallo, medium salsa, lettuce, guac on the side, no rice, beans, cheese, sour cream or corn :)

« Back to blog