I’m Utku, a Backend Engineer in the Movio Media squad. I joined Movio just over a year ago and have since been involved in a number of projects, Hackathons, and meetups. Essentially, my job is to analyze moviegoer transactions and meta data so that our Movio Media end-users can examine their behavior. For a closer look at what I do, here’s what a typical day is like for me at Movio HQ.
8.30 AM - I often start my day with a meeting, or “stand-up”, with all remote and local members of the Movio Media squad. We hold these daily to clarify upcoming projects or to hold implementation discussion. I especially enjoy the technical discussions where we can have our input on how we should be developing and maintaining the product. It’s also a great opportunity to check in with Aaron, Movio Media Product Owner, to find out what our customers are asking about or wanting from the product.
As the Movio Media squad is split into two to help us remain agile and focused, these stand-up meetings are a good time to check in on each side. The two squads are Shark and Bear, and each one works on a different part of the project. I’m in the Shark squad, and we focus specifically on data profiling. Bear squad uses data points we provide, as well as working on online querying. I like functioning in these smaller squads as they allow us to make new changes much quicker.
After the stand-up, I grab some fruit from the daily fruit box on the way back to my desk. Fruit is to me what coffee is to most programmers - I need to have a few pieces to get through the day.
9 AM - For the first half of my morning, I’ll take a look at the health of our infrastructure. Checking in on the numerous machines we have in the US is important for a number of reasons; to review and fix any job failures, and to ensure that all of our customer’s data is flowing without issue. This computation happens on our Amazon Web Service (AWS) clusters in the US, and we have set up an automated system to predict problems before they happen and trigger alerts. This includes looking at the AWS - ElasticMapReduce console to see if there are any failed jobs; and reviewing our Grafana dashboard to check if there are any strange-looking graphs. There are lots of moving parts, but our primary focus is making sure that all of the data our customers are getting is up-to-date and correct.
10AM - Once my morning routine is over I go back to my JIRA board, check in on my current projects and finish any minor tickets. There may be pull requests to review, releases to deploy, or dependencies to update. Basically, if there’s anything I can do within an hour or two, this is the time.
Most days, I’ll spend about an hour reviewing other people’s code; we have to do so at least once per commit. I also check in on deployments as these go out a few times a day. Thanks to Scala’s strong type system and test coverage, we’re not afraid of releases!
12PM - I mostly bring in food from home for lunch. If not, I find out where some of the other Movio Crew are headed and tag along with them to a nearby cafe. Since I usually bring healthy food from home, to compensate I prefer eating burgers or pizza when going out for lunch.
Once I’ve finished eating, I top up my fruit collection and spend 30 minutes browsing The Hacker News to catch up on the latest developments. If there’s not much to read, I head over to a few programming blogs in strongly-typed programming languages (Haskell and Scala mainly).
2PM - Afternoons are for coding! I close most of my browser windows, turn my phone off, put on my headphones and focus on my editor. My favourite part of being a Backend Engineer at Movio is actually solving problems that require thinking. We don’t just sit down and write code, we think about the problems and come up with ways to solve them. I try to think more than I type during my coding sessions, so I will often spend time walking around the office thinking about what I’m working on before putting it in action.
Another thing I enjoy here is being able to use open source technology. Right now, we’re working on migrating all back-end systems from Kafka backed stream processing to Apache Spark-based batch processing, so that’s what I’m spending most of my time on at the moment. We started evaluating Apache Spark a few months ago, and were amazed by its performance. This conversion means we will be able to handle significantly higher volumes of data at a much faster pace and, because the code complexity is much lower, we can code faster and with more confidence.
The great thing about working at Movio is the acceptance and encouragement to try new things, make suggestions, and have real input into the future of the product we’re creating. I get to work with a bunch of creative, interesting people that want to build something really cool - and it feels good to know I’m involved in the direction of such exciting technology.
Keen to join Utku and the Movio Crew? Check out our current open positions.