Jamie K.
About me
Jamie K. | |
Computer Science | |
Undergraduate | |
2012 |
My employment
Software Engineer | |
Capital One | |
United Kingdom | |
Digital and IT services | |
2009 | |
2012 | |
£32000 |
Like this profile?
Add this profile to your favourites so you can return to it later from your account.
A day in the life of a Software Engineer in the United Kingdom
My career history
I left York in 2012 and joined Rock Deformation Research working on modelling software for the oil industry. This company has since been acquired by Schlumberger.
In the early summer of 2013 I had the opportunity to join the BBC to work in their TV & Mobile Platforms department to work on Java services for their IPTV offerings. The BBC is a fantastic place to go after graduating, and they take graduates, so it is worth looking into it. They have some very good engineering practices which will set you up well for the rest of your career. I believe they also still do internships.
In July of 2014 I then joined Capital One off of a recommendation from a fellow grad and a fantastic sell from their Head of Digital.
Where I hope to be in 5 years
There are a couple of roles that are title and pay increases, after that I'm undecided on whether to go down a technical manager route or architecture. Either role will hopefully end in getting to, or close to, a CTO or similar role in the future.
My advice to students considering work
If you want to go into a software engineering / dev role, do stuff.
Go to hackathons (BattleHack, StudentHack, Major League Hacking). These are fun, inclusive, and allow you to just get on and make something. You get freebies, there are generally prizes, and the end product is something to add to your portfolio of work.
Code every day. OK, that's not a literal statement, not many people code literally every day. Try to code most days though, the saying "practice makes perfect" is a saying for a reason. The book "Outliers" by Malcom Gladwell is a fantastic reference for this. The more you code, the better you will get.
Learn what people are doing in modern tech companies. Find out what languages and frameworks people are using and try to play about with them. In general, you never have as much non-committed time as when you are in University.
Know what Agile is in terms of SCRUM / Kanban. A knowledge of Agile frameworks is a fantastic advantage. Know what TDD and BDD are. These ways of coding may well get you a good position on their own.
There are so many tools and systems that can be used that it's impossible to say what is the most important to learn. Personally I would recommend getting your head around git and gradle, try out AngularJS and node.js, and get a hold of the github student developer pack. If you want something Java based, look into Spring and some of the guides on their site.
If you can go to an interview with a few projects from hackathons, a couple of personal projects, know how to use git, and at least a basic knowledge of Agile and TDD, you should find yourself in a fantastic position.
Telling people that they should do something, or do it in a certain way, is terrible. Even if you are correct, telling people is a horrible habit to have. Instead, you should be suggesting what to do, or how to do it, along with providing solid reasons why. If you can't think of a solid reason why, then either you don't understand it enough or it isn't that important.
Learn new stuff. Then put it into practice. All the time.
Be humble. Someone, likely many people, have forgotten more then you know right now. And that's OK, but never act like you know everything, you won't keep a good job in a good software company if you aren't a bit humble.
I am happy for students to email me for more advice.
My advice about working in my industry
Most of them have been mentioned previously. I'm happy to give more specific advice via e-mail.
What I do
I have fun. I can honestly say that I love my job, and I'm happy to get out of bed for it (most mornings).
On a day-to-day basis I do TDD based development, chat with our product owner to make sure we are moving towards the correct vision, scoot around on our scooters, eat in our subsidised cafe (great food), and occasionally work on some innovation projects.
Skills I use and how I developed them
Extracurricular skills:
In terms of soft skills, learning to not be protective of your code is a great way to go, as is being able to rationalise any discussions.
The most important skill is to love coding. If you love coding, work doesn't seem like work any more. It makes your job enjoyable, it makes you better, and you'll start to wonder why people complain about working.
What I like most
Everyone's opinion counts. There is a management hierarchy in place, but in terms of development decisions, we largely make decisions as a team. Your opinion is valued on its merits, not your job title.
What I like least
Financial establishment restrictions. As a financial services company, we have regulations to follow and a lot of security protocols in place. This can mean that we can't instantly use any library we want, it needs to go through a vetting process first. This can be frustrating.
On the plus side, we are looking in to how we can improve and quicken the security bonus.
Next steps...
If you like the look of Jamie’s profile, the next steps are down to you! You can send Jamie a message to find out more about their career journey.