Our "Day in the Life" series gives you a glimpse into the everyday lives of Cloud team members and our culture here at CenturyLink. The series focuses on all different avenues and roles in our company, from developers, to product owners, technical writers, to the administrative staff. In this post, we highlight Brian Felton Cloud Architect working on the Advanced Storage team located in the Development Center in St. Louis. The following is a rough timeline of a typical day for Brian:
Our team pair switches aggressively and expects engineers to work any card on our board. We use Trello to track our product deployment steps from conception to completion, and beyond. Our team works in 2 week sprints and do weekly grooming and assessment of cards to ensure feature requests are met and velocity is consistently achieved. So it is almost a given that I’ll be working on something different every day, which is awesome!
5:30 AM: Wake up and get ready for work.
6:00 AM: Head into the office. It’s not that I’m a morning person so much as I really hate traffic.
6:30 AM: Arrive at the office. Time to make coffee, which usually means restocking the Robo-Coffee (bean-to-cup) machine and conversing with my co-workers waiting for their turn to fill their cups.
6:40 AM: Time to catch up on email, Slack, and any other notifications. I check tickets and the monitoring dashboards on our systems to ensure everything is in working order.
7:00 AM: Other people are starting to arrive. Time to go make a second cup of coffee and be social. Generally at this time of day a line has formed and conversing with my co-workers waiting to fill our cups is the norm. Sometimes the conversation is work related, but often it is a chance to talk about family, sports, and weekend plans.
7:30 AM: Coffee time is over. Time to pair up with the other early bird engineers on the team and grab a card from the Trello board. Looks like we’ll be adding some DNS updating functionality to our object storage replication application. Time to TDD some stuff.
9:10 AM: The rest of the team has made it in. Stand-up time! Stand-up is a quick 5 minute recap of what everyone worked on the previous day, what they will work on today, and any blockers they have.
9:15 AM: Stand up is over. The Product owner gives updates on hardware orders, customer feature requests, and anything else affecting prioritization. The on-call engineer (we call that person "Batman") gives a recap of any open support items and points out where assistance is needed.
9:30 AM: Back to pairing on Erlang.
11:15 AM: Lunchtime! The team heads to the dining area to eat and be merry. The company caters lunch twice a week (Tuesday and Thursday), we even have a Trello board for lunches. The other days of the week the choices are grab a bite out, go down to the cafe, bring your lunch, or grab something from the E-Mart, where the company loads each employee account with funds weekly. All that's needed to check out at the register is your thumb print. We work in team rooms, but we all eat in the dining area, which we've named (Joe's Tavern). This part of our culture is pretty cool. Having lunch together allows for collaboration and communication with others product teams (some of which your product may have dependencies on). And everyone likes free food. And cookies...there's almost always cookies!
12:15 PM: Lunch is over. It’s time to pair switch, so my partner and I wrap up anything that was in flight before lunch. She has agreed to stay on the card today, so I’m going to find something new.
12:30 PM: I join my new partner on their card. For this card, we’re spiking on caching technologies for an upcoming block storage offering. The card is fairly far along, so we’re just chewing through performance tests to see how the different solutions perform. Since this involves a lot of waiting, I hack together a Perl script to parse the results files and produce readable output.
4:00 PM: The day is over. Time to head home.
4:30 PM: Arrive home. I either go out and run a few miles or make dinner with the wife. The rest of the evening is spent with the family.
8:00 PM: Kids are in bed. Time to unwind with TV, games or some light coding.
10:00 PM: End of my day.
Brian has a degree is in Computer Science. He has worked in IT for fifteen years, (eight at Savvis/CLC) and has worn many hats to this point in his career including: DBA/SQL Jockey, Architect, Monitoring/Data Collection Guru, Middleware Developer, Technical Lead, Front End Developer, PaaS/Cloud Foundry DevOps Engineer, and Infrastructure Guy. He has written production code in at least a dozen languages across almost every flavor of Windows and 'nix. He views complex tasks – especially operational ones – as immensely enjoyable challenges.
I interviewed Brian to get more insight into his background.
When I asked what he felt his unique strengths were he responded with:
- I learn new languages and technologies very quickly.
- There are few tasks that cannot be run as a Perl or Bash one-liner, which I am proficient in.
- I can tell you the difference between a gerund, a participle, and an infinitive.
- I view almost everything I don't know as an opportunity to gain a new skill.
- My team values having each engineer capable of working any task on the board. When your tasks range from writing Erlang to tuning kernel parameters to wading through a jumbled mess of open sourced C++ to bootstrapping a rack of servers, it helps when you have a background in 'all of the above.'
- As for the organization, I excel at fixing broken things, and everyone has broken stuff at some point.
What has your favorite project been? Why? The 'Rescue AppFog' mission in 2014 was my favorite project here so far. By the end of 2013, very few of AppFog's engineers were still around, and the remaining team was under water dealing with upgrades, customer tickets, and abusive behavior. I was part of a small team from St. Louis recruited to learn the AppFog and stabilize the platform.
The project gave me exposure to Cloud Foundry, Ruby, Python, Node.js, the IaaS landscape, and a whole host of technologies and concepts with which I had no familiarity. All of this exposure came in a 'baptism by fire' environment, where you were forced to learn the technologies while moving from one proverbial fire to the next. After the dust had settled, I emerged with a far better understanding of some newer technologies, a significantly better understanding of the IaaS/Cloud competitive marketplace, and a serious appreciation for everything Operations/Sys Admin folks do every day to keep things running. Also, I got to spend a few weeks in Portland, OR. It's my observation that they've got a mean food truck scene up there.
What have you done on your team that you’re most proud of? I enjoy cooking and have been known to cook for my teams. I served my team a beef wellington – cooked to a perfect medium rare, served with a green peppercorn, and Brandy cream sauce.
In regard to a technical achievement, I've put together some Ansible magic to provision, bootstrap, and handle inventory management for CenturyLink Cloud VMs.
What ideas have you brought to the company that you have implemented? In the past year(ish), I was one of the original two developers on the CenturyLink Cloud Ansible Module. I've made contributions to that and to the CenturyLink Cloud Python SDK which have allowed my team to automate a sizable portion of our Platform infrastructure provisioning. My goal, in the not too distant future, is having the ability to provision an entire object storage cluster from a single script (hardware bootstrapping excluded).
How does your personality help you perform at CenturyLink Cloud? I'm laid back and able to adapt to our ever-changing environment.
What is the biggest challenge you’ve had to overcome and how did you do that? I worked on a project a few years ago that was near and dear to me. As often happens in Agile-based models, the project was killed, albeit perhaps not in the most graceful manner. Instead of licking my wounds, I volunteered for another project that exposed me to a world of new technologies, and the rest is history.
What drives you or motivates you each day? I have the opportunity to work with exceptionally talented people every day. I want to learn everything I can from them (and maybe share a little "Bash-fu" along the way).
What’s a little-known-fact about yourself that you’d be OK sharing? My first decently paying job was as a paid singer.
How does your role translate to your influence and collaboration with others? Being an engineer on a single team means there are daily opportunities to collaborate on your team. The environment also encourages collaboration amongst other teams. I take any opportunity to champion the new internal Engineer Swap project,I have already swapped onto one team, and am looking for other opportunities. Coffee and lunch are great times to talk to other teams, find out what they're doing, and share ideas. If a team has an open source project and I can lend a hand, I will.
Want to learn more about our teams and culture at CenturyLink Cloud? Check out our other Day in the Life Features and Sign-up for CODE:
- Storage Engineer: Brian Haggard
- Cloud Technical Writer: Daniel Morton
- Cloud Engineer: Rebecca Skinner
Sign up for our Developer-focused newsletter CODE. It's designed hands-on by developers, for developers. Keep up to date on topics of interest: tutorials, tips and tricks, and community building events.