I was asked recently by someone looking to possibly get into this field, “what does a normal day look like for you”? It’s a good question. I haven’t ever really thought about in before. I tell friends I sit on a computer all day and write code, but there’s a lot more to it that I just don’t think about usually. So, here’s an average day for me as front-end developer.
I get up around 8 or 9, but usually 9. I have no specific start time, so there’s no rush. I get up, and open my laptop. I check Twitter first almost every morning. I usually get tweets and mentions from tweets the day before by people in other countries. I then check my work email and personal email. I don’t get many emails on either account, so usually this process takes no more than 10 minutes. If I’m in the mood–usually when I’m excited about a project or had to quit working the night before because I was too tired–and it’s not too late already, I’ll start coding on personal projects for a bit. Usually somewhere between 30-45 minute sprints. I then close my laptop and hop in the shower, get out, get dressed, pack up, say goodbye to my family, and leave.
I live about a 20-30 minute walk from work. I live in downtown Portland in SW and work in NW at Simple. On Wednesday’s I, and many of the front-end team, work from home (“WFHW” as we call it). If it’s Mon-Tues or Thu-Fri, I walk to work, plug my laptop into my external monitor, fill up a glass of water, and open up Chrome, Twitter for Mac, Textual (IRC), and login to the VPN. I glance through a dozen or so tweets, and then go to GitHub and our private GitHub Enterprise app. GitHub allows us to share our code between each other and provides a place to keep track of bugs. I read through all the bug tickets, pull requests (a way to send changes to a someone without saving them to your main codebase. Allows for someone to review your changes and if they look good to be included in the main code base), and comments on code changes.
Once I’m done reading through all that I get my development environment setup. I open Vim and start up our Ruby app. After all that, it depends on if I’m currently working on a feature or not. If I’m in between projects or don’t have any urgent due date, I’ll go through the tickets and find some bugs to fix. If I’m working on a feature I then start working on that and commit (basically means “saving” your code. See this Wikipedia page for info about version control) changes as I go along. If it’s a feature I’ll give my team regular updates with what it’s looking like, anything that’s been blocking me, or if anything in the codebase is going to significantly change.
On Fridays we have “All Hands” where everyone in the company stops working at 3pm and the CEO and others give updates. They’re extremely transparent which is great. Most tech startups are from what I’ve heard. After everyone is done with the updates people can demo anything they’re working on. Customer Relations may demo some notes they got from customers and engineers demo cool new features they’re building out. It’s a lot of fun. Fridays are also “giffridays”, which is where in IRC we post a bunch of funny gifs we found throughout the week. It’s become something I look forward to every week.
After the day is over–around 6ish–I walk home. I eat dinner with my wife and kids, play with them, watch a little TV. After the kids and wife go to sleep I usually hop back on my computer to work on code some more. Not because I have to, but because it’s so addicting. I work on EpicEditor a lot in my free time and now Piggybank which is a side project I’m working on with a few other dad programmers from the area. If I’m close to finishing something for Simple, or it’s a fun project, I’ll work on that some more.
Not everyday is a coding day tho. Many people go to a lot of conferences. Things like NodeConf, Fluent, JSConf, OSCON, and others are really popular and you can meet other programmers. There’s also local meetups for all kinds of things. Everything from general front-end or specific things like jQuery to building and controlling robots. You always have ways of learning new things from new people in all kinds of ways. This is pretty awesome and something many other career fields don’t have.
That’s the gist of a day of mine. I couldn’t have picked a better career field–aside from maybe being an astronaut. I don’t think people realize how great this field really is. They think programmer, dark room, anti-social. That couldn’t be further from the truth.
If you’re a dev of any kind, I’d love to hear about your day as well!
If you’re looking to get into this field, and have more questions, let me know here and I’m happy to help.