Juggling Today
For mom and dad, budding informatics and computer science students, and any preparing interviewees, this is what I juggled today.
I arrived at the office before 10am energized in part from 1000mg of vitamin C and some DayQuil wearing an IU t-shirt and jeans having not shaved for days if not more than a week. As if scripted in a sitcom, both pots of coffee were empty so I made another while joking with a member of the product team. A “(hopefully) last” revision of a design waited for me in my inbox. The designer happened to be walking by giving me the chance to ask him if everyone understood the difference between character count and word count, a minor oversight in the user interface (UI). A stand-up status meeting was forming behind me to discuss the progress of the next features for our newest product. I had been pitching in where I could, so I spun around to sip my coffee and listen.
At 11am on Mondays and Wednesdays, major feature releases must be demoed to our quality assurance (QA) team. I had stayed late the night before so that my refactoring of a few thousand lines of code could be admired in one curl request. Everyone was happy for me that it worked so well locally, but insisted it needed testing in a broader environment. I adjusted the test scripts and tunneled into log servers praying it would work flawlessly, and as programming goes, it didn’t. Considerations and compromises were made to continue with the release before I headed to my noon interview.
For the past couple months, I’ve been interviewing candidates to join me in the ever broadening world of front end development. My in-house specialty is CSS so for about 45 minutes I questioned and quizzed and made myself available to answer any and all questions. Towards the end, someone thought to bring both of us lunch, which was much appreciated.
Refueled, it was time to start juggling projects three and four for the day. Another designer wanted my input on the flow of a new multi-step feature that requires as much backend magic as it does design clarity. We’ve been meeting in brief stints for the past few days to rework details and cut out non-essentials. Bugs have popped up in other parts of the code-base from my refactoring but are easily fixed. I got distracted and nailed down a re-opened display issue with Internet Explorer 8. I got distracted again and wrote an email suggesting a schema for storing some new data when the release ops manager came over to clarify the details of a new repository that was being created for the project whose design I first reviewed today.
After helping another engineer resolve some SVN conflicts, we discussed a new API she had designed and developed that I would be using for a reworked portion of our product. We came up with a few solutions weighing the efficiency of the code vs the most awesome user experience I could imagine during which I was pulled over to review another revision of the multi-step feature. As I was walking back to my desk confident in our decision on how to implement the API, another engineer was having trouble setting up apache on his new MacBook Pro. I sat with him comparing configs until we realized he was restarting OS X’s built-in apache server and not the one part of our development environment.
A few more bugs came up surrounding my imminent release and were easy to fix. I started to write a script that utilized some PHP classes that abstract our database calls and asked a chatroom of other developers if the classes supported MySQL LIMIT. Someone was able to help me right away, and I continued to hack together queries until dinner came.
That’s what I juggled today. I started six months ago fixing CSS and JavaScript issues while learning the custom PHP MVC, and now I’m involved with just about every step of the product life cycle. It can seem like controlled chaos at times, but it’s exciting and rewarding once it all ships.
(If you think you’d like to juggle some of this, Reputation.com is hiring, and I’d love to have you join our team. No, no one from the company asked me to write this.)