Where technology companies are based in the UK

A number of my clients have recently been telling me about new offices they have got or recently opened in other parts of the country. Having up until very recently lived in London (and never dreamed I’d ever live anywhere else), now that I have moved out, I was quite interested to see where the other tech hubs in the UK were, using techbritain.com my results were quite surprising:

London: 2,467

Manchester: 212

Reading: 205

Birmingham: 183

Edinburgh : 118

Newcastle: 106

Cambridge: 105

Brighton: 90

Cardiff: 80

Sheffield: 64

Leeds: 57

Oxford: 53

Bristol: 33

Southampton: 24

UK tech company distribution

How to pronounce the name “Maciej”

That’s right, it’s the name on everybody’s lips right now “Maciej”. But how should it be pronounced?? I’ve spent the last few years oscillating between either “Mat-edge” or “Ma-see-edge”, however I went out for beers the other night with a charming holder of this stalwart of Slavic names, “Maceij” and I was delighted when he put me right once and for all.

 

MATCH – EY

 

So hopefully, with a bit of practice I’ll never get it wrong again 🙂

CV Driven Development (CDD)

CV Driven Development (CDD) is a software development process which prioritises design and development choices that will enhance the implementing programmer’s Curriculum Vitae over other potential solutions, regardless of how rational that choice is.
The origins of CDD are lost in time but it is widely believed to be a common practice throughout the commercial programming world, dating back to the very earliest days of professional software development.
CDD is most commonly pursued as an informal, grass-roots lead practice, however there have been a number of well documented episodes when in times of economic or “bonus-hardship”, CDD has been management lead as part of a wider “staff retention” initiative.
See also: Mortgage Driven Development
CDD - CV driven development

If Simon Cowell followed CV Driven Development

Early 2015 technology market update

A new client of mine recently asked me to provide an update on what’s happening in the development and technology market right now, so I thought I would share it here. Comments in the comments please:

The introduction of the HTML5 standard has precipitated the rise of the OO Javascript, Javascript frameworks (Angular, Ember) and full stack Javascript (NodeJS, Empress, Angular) developer skills. These skillsets are now commonplace in the contracting world, although developers with greater than 3 years solid experience in pure Javascript development is rare as the language has not been used in its present sophisticated form for longer than this time.  The Angular, Ember and NodeJS frameworks are not older than 3-4 years. Prior to this Javascript was almost exclusively used as a “toy language”, one to be used in conjunction with an OO language like Java, C# or PHP on the front end.  Consequently there is a large skill shortage in this area, so we have seen all the usual signs of a hot market – other developers hurriedly converting to this language, most of the supply is contract based, developers coming from overseas to fill the skill gap, permanent salaries are outstripping like for like with the standard OO language developers. Many of the enterprise scale companies have attempted to solve this supply problem by creating their own Javascript expertise through graduate schemes.

The Ruby, Python and Javascript languages are the development languages of choice for start-ups.

Some banking bonuses have recovered however most of the top investment banks appear to be planning to pay a low or zero bonus again this year.

Big data technologies continue to revamp the Business Intelligence industry with Hadoop, Mark Logic, MongoDB and AWS  leading the way. Handling data in general is a big  trend in the market and therefore we also seeing a new cadre of developers who are interesting in specialising in C++.

The internet security market continues to grow as more and more awareness of security vulnerabilities are exposed. We see this is a large scale trend in the technology recruitment industry.

Scala and other functional languages are today, less “the next thing” and are now far more mainstream. It appears that the hype over the past 4 years has not materialised into Scala pushing any of the major development languages (Java, C#, C++, PHP,  Python Ruby, C, Objective-C) off of the top most used positions.

We now see web specific languages and frameworks far more frequently on  developer CVs than previously, reflecting the general buoyancy of internet-based eCommerce business, e.g, Ruby on Rails (RoR), Grails, Django, and C# MVC.

Mention of the Agile methodology appears to have become compulsory citation for developer CVs.

DevOps continues to be a hot market with supply generally not meeting demand. Much of the market is therefore contract based or the skillbase is more recently acquired skills. DevOps generally refers to a deployment manager who can manage the deployment of  software applications onto cloud-based servers. The programming / configuration languages of Puppet and Chef are therefore hot technologies right now.

Developers based in the UK are expected to have an ever increasing amount of contact with the business that their applications support, leading to an ever increasing demand for developers with good communication skills.

In the last 6 months to a year, we began to see greenfield projects begun in the finance sector that were designed to generate revenue rather than satisfy regulatory requirements. This was in total juxtaposition to the proceeding 4 years.

In the past 2 years we’ve also seen an increased appetite for developers to consider working for a software vendor when considered against working “inhouse” for a large corporation.

London continues to attract large numbers of developers who are not based in the UK. Many of the European developers now being attracted are Spanish, Portuguese, Italian or Greek. Typically candidates from the Southern Mediterranean have strong national accents and poorly suited to analyst or client facing roles. The high cost of living coupled with improved salaries means immigration from Poland, Czech Republic and the Baltic States has dramatically slowed down. We are seeing some developers come from Romania and Hungary following the recent lifting of immigration restrictions, however the established nature of the IT markets in Bucharest and Budapest and their relatively decent standard of living means that the bright lights of London are not that attractive.

Finally we believe we are at the very earliest days of what will be a major trend over the next 5 years which is the “internet of things”. This is the industry devoted to connecting non-traditional computer platforms via the internet (such as your car GPS system to your home’s central heating system and making your house warm up before you arrive home in the evening). At the moment British Gas’s Hive product is the highest profile operator in this exciting new industry.

 

This graph showing the popularity of each programming language in the market is very interesting: https://image-store.slidesharecdn.com/9495a4a0-2db2-4245-b712-0e313264e54b-original.png

Idiot’s guide to writing a CV

– FOR TECHIES ONLY –

Idiot's guide to writing a CV - example

Getting writer’s block sprucing up your CV? Try this fool proof technique:

FIRST LINE:

State the name of the company and what dates (MM/YYYY) you were from and until.

SECOND LINE:

State your job title.

THIRD LINE:

Say what challenge your team was tasked to solve, in one sentence.

FORTH LINE:

Say what the solution to that challenge was, in one sentence.

FIFTH LINE:

Say how that solution was implemented and what technologies were used to implement that solution.

SIXTH LINE (if appropriate):

Explain how you took ownership or responsibility for anything.

REPEAT FOR EACH JOB YOU HAVE HAD / REPEAT FOR EACH PROJECT YOU WERE A PART OF.

A rough guide to the Italian University system

Or, “how to understand what your Italian developer’s degree actually means”

 

LDV with big data on his mind

An Italian academic with big data on his mind?

 

There are numerous Italian developers in London today, for many years there was a steady trickle but since the global recession I think its fair to say that that trickle has increased to more of a steady stream. Italian developers tell me they come to London seeking better opportunities, the attraction of working in a global city being one thing, but also being a part of the vibrant tech scene that we have here as well.

Speaking to my clients however, and there is not a great deal of knowledge in London about what the top IT universities in Italy are and how the system of final grades works.

How does it all work?

In a similar way to the system in Spain, in Italy it’s common to go to best University closest to your home but if you get outstanding grades then you might travel to a university further from home. So if you live in Genoa, and you’ve got good grades and a real passion for Software Development, its probable that you’ll want to go to the Milano Politecnico or the Politecnico di Torino.

In terms of the “best” universities in Italy, there are universities that are prestigious to attend and there are universities that teach Computer Science to a high degree of excellence.

Of the top IT universities for IT in Italy, there are 3 Politecnico’s :

  • Milano Politecnico (the largest technical university in Italy)
  • Politecnico di Torino (Italy’s oldest technical university)
  • Politecnico di Bari

And 3 other well established universities that have excellent reputations:

  • Universita’ degli studi di Pisa
  • Universita’ degli studi di Salerno in Fisciano
  • UniversitĂ  degli Studi di Napoli Federico II (the world’s oldest state university)

Rome has two top universities for IT, the Tor Vergata (a public research university located in Rome) and La Sapienza that are worth noting as well. La Sapienza is well-established university and has one of the oldest libraries in the world, it is also the oldest established university offering the Ingegneria (Engineering) type of degree.

The Politecnico at Bari is Italy’s has largest campus at 60,000 students, and has an international reputation for research. In my experience there are a number of excellent graduates with PhDs in big data related subjects in the UK who studied at Bari.

As with the British system of higher education there are a number of more recently established universities which are much cheaper to attend and have a lower entry criteria, and which are typically less prestigious as well. Interestingly however the Tor Vergata University of Rome was only established in the early 90s and has managed to establish a very strong reputation for the “harder” sciences of mathematics, engineering and computer science.

 An “Ingegneria” degree

The number one IT/Computer Science degree in Italy is the Ingegneria which is a type of degree offered by only a small number of Italian universities (mainly those in the list above). An Ingegneria degree can be studied for degrees in subjects such as Computer Science, Civil Engineering, Telecoms, Nuclear Power, Chemical Industries etc.

The “computer science ingegnere” are highly sought after and are generally considered to have a better degree than a graduate with a straight “computer science” degree.

Entrance Criteria

The entry criteria for the top universities in Italy involve entrance exams and achieving top grades at secondary school or scuola superior. All of the above universities have an entrance test on Maths ability, logistical properties and so on.

Final Grade

Graduates leave university in Italy with a score between 60 – 110, and may or may not receive a distinction mark on top, called Lode. Lode is the same as the Latin Laude or Cum Laude, translating as “with highest praise”.

Undergraduates complete their initial studies to achieve an initial mark of at least 60 (60%) and then complete a thesis (which can take between 4 months and 1 year) in order to complete their degree. Once your thesis has been handed in there is a final interview with a commission of professors, including the professor who assigned you the thesis. This consists of a presentation of the results of your thesis  (probably made using Powerpoint, for example) which is then follow by a series of questions about it. When you’re finished, you’ll be asked to temporarily leave the room, so that the commission can discuss and decide which grade to assign you). The final grade is the sum of your initial mark plus the result of how well you did at your thesis, meaning that in practice, very few undergraduates receive a final grade of 60.

Years of study

Degrees taken prior to 1999 took between 5 and 6 years. But today, Italian degrees follow a new system.

In the original system you needed a minimum of 28 exams (the majority of which were written rather than multiple choice) and then a face-to-face interview with a professor in order to graduate. It lasted 5 or 6 years and if you stopped after 4 years you left with nothing.

Since the reforms in 1999, and then further reforms in 2008 Students study for 3 years and then graduate with a laurea breve or a short degree, which is quite generic and doesn’t have a specialism. Graduates then study a specific subject (i.e. Computer Science) for 2 more years for a full degree and graduate with a Laurea specialistica or Laurea magistrale (depending upon the university).

Here is a handy flow chart showing how the new system works:

 

Newly reformed Italian uni flow chart

What has an Italian Computer Scientist studied?

Speaking to Italian developers already in London many tell me that there is still a high level of theoretical subjects covered and not as many practical courses as some would like to see (in the short degree) in the Laurea Breve. For example the University of Naples has a lot of courses such as Algebra, Physics, Maths, Algorithms etc but only has 6 or 7 exams regarding Web, programming languages and Software Engineering. This seems to be largely because many of the professors in the technology faculties actually come from a Maths or Physics background rather than a Computer Science background. In a Computer Science Laurea specialistica or Laurea magistrale the course is entirely focussed Computer Science. Many young Italians would also like to see English courses become part a degree.

A rough guide to Spanish Universities

OR “how to tell if your Spanish developer has gone to a good university”

Top Technology Universities in Spain

Recent economic unheaval in Spain has lead to a sizeable number of Spanish developers coming over to London. I find that Spanish developers have excellent web development skills, good experience with software development across the SDLC and good architectural skills.

But they also come with some with some challenges, the main ones being communication skills and a mystifying education system. It is also common for Spanish developers to have a Europass CV – which is a not very helpful in the UK market.

Sadly many Spanish developers come to the UK with excellent computer language skills but poor spoken English. A few employers are happy to take on a good coder (at below market average salary) but in today’s ĂĽber competitive market the ability to clearly communicate with internal staleholders and the end user has never been more important. My only advice to them is to work as hard as they can upon their speaking and listening skills, ideally before they arrive.

The Spanish University system

The problem for a recruiter in the London market is that Spanish CVs don’t come with a grade for the degree they acheived and I think its fair to say that knowledge of which universities are the best for computer science or software engineering is low in the UK. Its got to be said that from my research the Spanish university system appears completely different from the UK system.

Much of this is because Spanish students tend, on the main, to go the university of their nearest big city, so there is not really a national “league of excellence” for higher education as Spanish universities are not ranked according to national performance in each subject. So instead we can say that the top universities are those situated in the largest city of each region.

The bigger the city, the bigger and better the University is

If pushed a Spaniard will tell you the two top universities for programming-based courses are Deusto in Bilbao and ICAI in Madrid. Both are private universities and – typically Spanish – both are run by Jesuits. These are prestigious institutions to attend and teach at a high technical level.

In fact, although a national ranking of Spanish technical universities does not exist, El Mundo (a well respected Spanish newspaper) has compiled a list here (you will need to use Google translate if you don’t speak Spanish).

A two-tier system

As in much of Europe, Spain has two tiers of university, a public tier which will generally be “the University of” each city and a private tier. Top students tend to go to the biggest public university in their region unless there is a private university nearby that has a renowned specialism.

Private universities come in two forms, the traditional, well established institutes and the newer type from the last 50 years. Many of the newer ones have a second rate reputation, and none have an entry criteria of academic excellence.

There IS a final grade

When asked, most Spaniards will tell you that you do not graduate with a mark and instead as long as you attain higher than 50% then everybody graduates.

However, I have found that there is a grading system. Or rather there are two grading systems, the established one and a new one introduced 2 years ago – both run concurrently.

With the established system there are four grades you can graduate with, Grade 1 (for which you receive a mark of 5-7 and is equivalent to an overall achievement of 50-70%), Grade 2 ( covers 7-9 and the according percentages), Grade 3 (9-9.5) and Grade 4 (9.5-10). So you can achieve the equivalent of a first class mark in the UK, yet receive a grade which is not distinguished from the same mark as a 2:2. You can also be in the top 5% of your year/class and still receive the same grade as everyone else. So it is well worth asking what percentage your candidate received.

The key indicator is TIME

Importantly there is actually no time limit on the length of time you study for and poorly performing undergrads can retake a course as many times as they like. So in Spain the main indicator of a “good degree” is not the grade achieved at a university with a good academic reputation but whether they attended the biggest university in their region and if they graduated within 4 years and no more.

Its difficult to actually differentiate any more than this on the strength of the CV alone and I would say that unless you can see that your Spanish technologist attended Deusto or ICAI I would skip the university part of their CV and go straight to the tech testing!