Hello, I am a software developer at a large investment bank. I code, fix problems, and drink coffee. In between sips of coffee I help screen the incoming CVs for the technology summer internship and grad placements. I've seen so many I hardly glance over them any more. Why? Because 95% totally suck.
Want to differentiate yourself from the crowd? Read on...
Examples of What Not To Do
Starting with the basics.
The 6 page resume
You may hope listing every job you had from age 12 gives you an edge. It doesn't. Working out the most relevant points to put on just 1 page is actually hard and requires effort but you really gotta do it. If you are young, you are allowed 2 pages. Have prior experience? 1 page only. Stick to it.
Address, Term-time address, sex, marital status, etc
The first 1/3 of a page is normally wasted on details I skip over. As a large bank, your address is inconsequential. Country and city can help build a picture of you: "Paris" is fine. Further than that, addresses provide no valuable information. Term-time addresses even less so. Remember the application will have your address anyway. Sex/marital status and the like should be removed. The space you gain from removing this stuff will be useful later...
Printer paper
When you write your CV in Word, it is configured for your printer and its margins - load it on another computer connected to some other printer, and suddenly your text overflows and nothing lines up. Always convert to PDF.
Aside: LaTeX can look good, but nobody really cares.
Spelling and 'grammer'
It's concerning how many people don't use a spell check, and that includes the answers you enter in the browser!
Foreigners are excused from less than perfect English phrasing.
Unforgivable : "I would like to work at XYZ BANK because I have excellent attention to detail ...." when we are actually ABC BANK. Yes, this happens.
Listing MS Office, Adobe Lightroom, and Garage Band
e.g. you put 'Intermediate in Java' along with 'Expert in Adobe lightroom and MS Office' (with misaligned bullet points). Don't do this. We're an investment bank and you will spend your time coding, not playing around with Adobe.
We expect you to be tech savvy (and therefore you should be competent in MS Office no matter what) and so even listing it is kinda dumb. Nobody did a mail merge in the last decade and the only really useful application we use is Excel. I have literally seen dark magic unfold when a genuine expert is on the keyboard, and there are still some investment banks which run the majority of their day-to-day software with Excel as the front end. Don't underestimate it.
Choice of programming languages
"Advanced in HTML and CSS" - nobody cares - again, we're an investment bank, you won't be writing much HTML and because you're ultra-tech-savvy you'll have no problems when you do.
Functional languages are nice to show you might be good (ML, Haskell, etc). C/C++ are good. Python and Java are the go-to languages. PHP is, as far as I'm aware, not used anywhere in the bank.
The 2:1 degree
There is no incentive to pick the person with a 2:1 when there are people applying with >90% in every module. However, hackathons, personal projects, github, and conferences would weigh in.
The github page...
...with 5 or 6 files for some university project (unless it's really cool). Instead, take a sample interview coding question (from a book like Crack the Coding Interview) and write a decent solution with some unit tests. This is so much better.
If you have a real project on there, all the better.
The "Write about an interesting topic" question
As part of the application you'll normally have to write something like this. For the most part, everyone writes about the same topics and it gets rather boring: Facial recognition, self-driving cars, artificial intelligence without reference to any particular method, 3D televisions (srsly?), the internet of things (ugh), and quantum computing...
While none of the topics are bad, they are generally presented in very similar ways and not properly thought through. In particular, what are the implications of the technology?
Don't write about your fantastic arduino project with your home-made PCB design (that's EE, not CS). Don't copy+paste from Wired.
You can write about cryptocurrencies (and more importantly blockchain technology) but its easy to spot when you don't really know what you're talking about.
If you're not knowledgeable about something cool, at least stick to a finance and/or software topic.
The best answers were deep, insightful, and interesting - and by that I mean they were not written for the sheer purpose of filling in the blank space. This is more difficult than it sounds.
Applying for the grad programme with no experience
My decision to send you on to the next stage is made so much easier when you are applying for the grad programme with at least some previous experience of tech and/or finance and preferably having done a summer internship before. People who write about their team project are struggling. It isn't a requirement, but it sure makes my life easier.
The conundrum person
It's the person who got a C in Maths and a D in Computing at high-school but then has more than 90% in all their university modules (even more weird when it's CS).
Or the person who got A* in all subjects, then 2 years Physics at Oxford University, dropped out and did a BTEC in Computing & Management. Say what?
You have to tell a clear story - if it isn't, put an asterisk and write a short footnote to explain. Do NOT write an additional page on your Extenuating Circumstances.
Foreigners
On your CV make it clear what your local grading system means: getting a '10' in Italy sounds good until I google it and find it's marked out of 30. Make it absolutely clear, "9.5 out of 10 (equivalent to A* in...)". You don't want to be rejected because they didn't know how good you really are.
Volunteering, sports, extracurriculars
These can be good and can highlight your CV but don't go overboard either. They look better when you really achieved something. Mentoring other students, mentoring those in unfortunately circumstances, tuition etc are all good.
Applying because your coursemates did
Be careful what you write - it's super obvious when a bunch of CVs come in from the same university and you all wrote about the same fascinating topics (and the same fascinating project on JPEG compression, which the whole class had as homework).
So what do some of the best applicants look like?
- Not always from the obvious countries, more like Romania, the Baltics, China, and well beyond.
- Competitions and awards in maths / physics (Olympiads). Hackathons. Kaggle. TopCoder.
- You have a github page and it even has a range of meaningful code examples.
- You attended a CS conference or attended / formed a CS meetup group (or maths/science),
- You held a position on a society committee / sports group / volunteered.
- You got more than 80% on everything.
- You implemented an advanced AI method, modified it, and wrote a whitepaper on it.
- You built your own compiler.
- You know who Knuth is and even did some of the questions.
- You can sort a list in faster than O(1) time*
Oh crap !! So, I'm never getting in ?
Fear not. There seems to be an assumption that every developer must have +140 IQ. The reality is that we want well-rounded people who can get the job done. You also have to be a nice person and be able to work in a team (you'll need their help). Entry-level roles are given quite some time to get up to speed; how fast you run is up to you. So take the above with a pinch of salt and give it your best shot.
*only Chuck Norris can