This Summer, I managed to get an internship with one of the largest technology giants, IBM. CNN’s Fortune has some interesting stats on the company as a whole. It’s one of those companies that you ask the question “well, what do they actually do?”, the answer is, pretty much everything. If you interact with a bank, chances are that you’re using IBM technology. If you’re looking to patent something, chances are IBM already has it patented. It holds the record for “number of patents generated by a company” for the last 20 years.
I was one of nine interns participating in the Extreme Blue programme, which ran for 13 weeks. The challenge is to analyse a real business problem, come up with a novel solution, and then implement that solution in the remaining time. The internship culminates in a european expo, where the other european teams demo their challenge and their solution. This year, there were 16 teams.
I learnt so much in the past twelve weeks, it’s hard to know where to begin. We started off by analysing our challenge, and coming up with the best technical stack to suit the problem, eventually, we settled on an Android client, which suited our experience, and a server made from MongoDB and Node.js, which suited the scalability and fast development cycle requirements.
Of course, we used a software version control management system to keep track of changes and versioning. For this, we used Git. Mostly due to familiarity with the program, but also because I am a big fan of sourcetree, so we were able to use that! Unfortunately, I can’t discuss much else about the application or the inner workings of our solution, as they are IBM Confidential.
It really was a fantastic internship, and I would highly recommend it to anyone interested in working on a specific business challenge in a team for summer.
Over the course of the internship I was able to work with:
- One business intern
- Three amazing technical interns
- A team of IBM mentors
- An in-house User Experience team
- Technology I hadn’t used before
- Technology I was familiar with
- People from around the world
- A challenge we had to solve in our own way
One of the most beneficial elements of the internship was the act of doing a code review. It’s where you submit some code that you have written, and get feedback on its correctness, it’s legibility, and any pointers towards best practises or things to avoid. This really encouraged me to write better code, and to write maintainable code, too.
I can’t recommend the internship highly enough, it was truly a fantastic experience.