After six months of working at Building Blocks as part of the brilliant graduate scheme, I thought it was high time that I shared my experiences with the wider world!
Given that this is the internet, my first thought was to communicate solely through the medium of animated gifs and emoji. That sadly didn't pan out, so here's the low-fi version...
I'll give a quick run through of the kind of work I've been up to since I started, then move on to the cool technology I've been using.
Hitting the ground running
One of the very first things I sunk my teeth into at BB was, in fact, this very blog! The blog went through a big redesign roughly around the time I started, with lots of funky changes to the backend as well. This was great to work on for a number of reasons, but mainly because I was able to experience the workflow of the company firsthand. This might not seem like a big deal, but it's a totally different experience on the front lines, working alongside an experienced team who are experts in their fields.
The blog redesign was a big success (particularly because you're reading this), and we were able to really push the limits of the blogging platform to get the most out of it. I hadn't worked with Hubspot a lot before, but some of the functionality and malleability in terms of what can be built is pretty staggering.
Picking up speed
Following the blog, I moved onto a particularly exciting project - the first ever digital version of Spotlight's Contacts Handbook.
I was chiefly responsible for the Android version of the app, which wasn't what I was expecting when I joined a .NET focused digital agency! I had quite a bit of Android experience before this, so it was great to put this to use in a new and demanding way.
It really does go to show the adaptability of the company. Whereas in a lot of companies, in the first few months I probably wouldn't have been given much responsibility, at Building Blocks my skills are put to good use, which is really rewarding. Nothing speeds up your personal and technical development like being thrown into a client project.
The project was a whirlwind of development, that produced an app that is convenient and wonderfully designed. Putting the app side-by-side next to the physical book that it replaces, really shows the attention to detail that we put into the job, and it's definitely something I am proud of being a part of.
And right this minute...
Currently, I'm working on a big project that's not quite ready for me to disclose, but it's a high-profile project for a high-profile customer, and I'm working on it with some of the .NET rockstars of the company. We're putting together a cutting edge Sitecore-based solution with MVC and Razor, enabling our customer to configure and customise just about every part of their flawlessly designed and fully responsive new website.
It's challenging and exciting to work on, and I wouldn't want it any other way.
I wouldn't be where I am today without our one and only true saviour, Git. I might get a bit opinionated here, but Git is essential, powerful, and absolutely necessary to modern development.
I had previous experience with Git, and while the client of choice at Building Blocks is Atlassian's Sourcetree, I much prefer using the terminal, since it gives a great understanding of what's actually going on under the hood.
My recommendation would be that if you're reading this and you're not using Git, start now. If you need any more persuading, check out Justin Hileman's 'Git-Pretty' image (which I'm petitioning to have as a giant poster in the office).
Android Studio and the Android SDK
As I mentioned, I had the opportunity to work on the Spotlight Contacts app, and for this I used Android Studio and the constantly improving Android SDK.
Sadly, I just missed the boat for version 1.0 of Studio, as the project was just coming to a close at the time of release, but I did thoroughly enjoy the features of Studio, which makes Android development seamless.
In particular, the features I couldn't live without are:
- The Documentation Window - set up to auto-fetch the documentation of classes and methods as I hover over them. This has taught me more of the fine details of what I'm doing than I'd care to admit.
- The runtime expression evaluator that allows arbitrary code evaluation at a breakpoint, which lets you dig deep and figure out the root cause of the more obtuse bugs that can occur (.NET devs think 'Immediate Window').
- The Gradle build process that makes repeatable builds a reality.
Cutting Edge .NET
Building Blocks always use the latest and greatest features of .NET.
Coming from a Java and Linux background before my current role, picking up some of the latest C# features has been a pretty eye-opening experience. I've really enjoyed picking up and adapting to features such as dynamic binding and LINQ, all of which just aren't there in Java, and have definitely made me a convert. As well as this, I'm particularly looking forward to getting my hands on the null propagation operator that's coming up in C# 6.0.
Damn, it feels good to be a developer
To summarise, working at Building Blocks for the past six months been great, and I'm really looking forward to seeing what challenges the next six months bring. Hopefully, I'll get to write another one of these blogs (preferably with loads of animated gifs).
Building Blocks are always keen to hear from ambitious graduates looking to kick-start their career in digital. Find out more about our graduate opportunities.