Banks vs Startups: The Tech Talent War heats up

We recently came across the following in a job advert for a software developer: 

- 4-8 Years in a highly reputable technology firm (i.e. Google, Facebook, Twitter, etc…) 
- Candidates from start-ups are especially welcome. 
- Can demonstrate extraordinary proficiency in either Java or C++. 
- A PhD or MEng in Computer Science. 
- Can exhibit a passion and enthusiasm for remarkable technology (i.e. blogs, awards etc..) 
- You must be able to demonstrate you are highly competent in security. You must be comfortable that if given a piece of code, you can quickly and meticulously show areas of the code that are susceptible to exploitation.
- As an individual - it’s in your nature to question why things are the way they are. 

Now this description could easily have come from a high-flying startup or major tech firm, what's suprising is that this ad was actually for a major investment bank (the advert doesn't identify the bank in question but from the description it seems likely that the firm in question is Goldman Sachs).

Historically banks have tended to focus on attracting developers from within the industry - the London financial sector employs tens of thousands of developers so there's no shortage of developers to go after. But in recent years more and more developers have left to found their own startups or been lured away by major tech companies like Google.

It looks like the banks have started to react and act to re-establish themself as the place for talented developers to work.

(the original advert or if you'd much rather work at a startup check out our listing of startup jobs)

Lean vs VC: How We're Taking on StackOverflow Careers 2.0

When we first had the idea for building a job board designed for developers the market was fairly open, and our biggest competitor was Joel Spolsky's job board which was only a side-business to his blog. Since then things have changed with Joel along with Jeff Atwood founding Stack Overflow with Joel's job board being merged with Stack Overflow to become Stack Overflow Careers (now called Careers 2.0).

No longer was our main competitor a relatively small minnow. StackOverflow have gone on to raise $18 million dollars in investment (with reportedly a nine-figure valuation) and their developer Q&A site has 17 million monthly uniques, Careers 2.0 is their primary income source. We'd become David to StackOverflow's Goliath.

We knew from the start we couldn't compete on huge ad campaigns or massive number of eyeballs, we couldn't compete on being huge, so we decided to compete on being lean. We decide to start by focusing on the UK market and getting intimate with our customers, knowing that what we learnt from them would allow us to achieve organic growth and build a much stronger product than StackOverflow's waterfall approach to business model development.

With a budget of only £250/month + the income CoderStack was bringing in, over four months we've built CoderStack to the point where it's more successful than StackOverflow Careers on most metrics in the UK. We run more job ads, our jobs get viewed by more developers, we get more applications/job and we have more satisfied customers. We're even doing better in SEO terms.

This is the story of how we're doing it

Thinking lean

Too often people think about "lean startup" as a methodology, follow a list of steps and things will work, it's not like that. Being lean is a way of thinking, it has to apply to everything you do. Lean is the application of the agile process to business.

In agile development you write a test case before you write the code that passes it, the same applies with lean. Before we make any change to our business (whether it's adding a feature to our site or buying ad space) we decide how we're going to measure if it's successful.

We don't just build a Minimum Viable Product we build Minimum Viable Features. We started with the most stripped down job board possible, initially you couldn't even search by language or location. We went to developers and asked them what they wanted, with every feature we introduced we started with a cut down basic version to see if it was just something developers wanted or something developers would actually use.

We don't have lots of spare development cycles, so we need every developer hour to count.

There's a 80:20 rule in software development. That 80% of the functionality will take 20% of the work, and the remaining 20% (often dealing with fiddly edge cases) will take 80%. Once we have 80% (often even less) of a feature working we push it out live and see how users are using it. On more than one occasion we made it work with huge hacks. Often we found the users just weren't using a feature so we could scrap it and move onto something else glad we hadn't wasted our time on making it perfect.

An example of this was search. Lots of people we spoke to looked at our site and said "why isn't there a search box", from using other job sites developers had become acclimatized to typing in what they wanted into a box. So we hacked together a quick search using SQL likes (if you're not a developer: this is an incredibly easy to implement way to do search; processor usage however is horrendous and heavy usage will kill your database server under load), we pushed it out and started measuring. It turns out only a tiny fraction of users used search, most were happy navigating via links, we did however find out that the search data on which search terms developers were using provided us valuable insight into where our navigation links were failing.

The value in search wasn't primarily to our users but to us in terms of analytics, so rather than building a sophisticated search engine, we decided to buy a search-as-a-service product from Google that was trivial to plug into our site and gave us great integration into Google Analytics.

Thinking lean means being iterative, we haven't done a big launch, we've taken slow but steady growth.  In contrast StackOverflow Careers have had two major "big bang" launches, the latest even winning them the "Best Launch 2.0 Overall Company" at the Launch conference (we're not kidding).

The risk with big launches is that they stop you continually innovating and testing as you go along. If you bottle up what you're working on, you're at a much higher risk of failing when you do launch. Imagine if you were developing a piece of software and never ran it to test it worked before releasing it. That's what companies are doing from a business viewpoint when they have big-bang launches.

Customer Development

We learn our customer's pain points and use them to position ourself in the market

StackOverflow Careers understand the first point, the primary pain point of developers is having to deal with recruiters (both they and we bar recruiters from using our respective services), the primary pain point of companies is hiring good developers (although companies often have big pains with recruiters too). What StackOverflow don't do is use this information to position themselves in the market, the right positioning can have a disproportionate impact on your marketing effort.

When selling you need to hit your customers on both the logical and emotional level, and it's the later part that Stack Overflow fails on, when they sell their job board, they're not selling to the customers pain point.

We pitch both developers and companies with an anti-recruiter pitch, as soon as we say that we are an anti-recruiter job board we get asked for business cards. Recruiters drive developers and the individuals responsible for hiring crazy, it hard to describe unless you've experienced the frustration of being called repeatedly by useless but desperate recruiters. We've spoken to investors who just can't grok the concept of people hating recruiters, it's one of the reasons we haven't taken outside funding so far.

Not only does being "anti-recruiter" get developers and employers over to our side, it means that the recruiters end up providing us free advertising. The next time the employer or developer is frustrated by an annoying recruiter, they're going think of CoderStack. By clever positioning we're getting our competitors (the recruiters) to act as our promotional machine.

We constantly react to customers feedback about our product and their feedback about our competitors 

We speak to a lot of customers on a regular basis, most of our sales are still hand generated by old-fashion sales techniques, we know this won't scale in the long term but what we're learning from it certainly will. We don't just talk to potential customers about what they want from us, but also what they like and don't like about our competitors, and naturally this includes Careers 2.0 and this feedback feeds into our product.

One of the biggest complaints we hear about our competitors is that companies are unhappy about not getting value for money.

Like many other job boards StackOverflow Careers makes the mistake of offering a standardized price across all locations. Without the same value being delivered across all location it's a recipe for frustrated customers. It makes little sense to charge someone in San Francisco the same price as someone in London, if you have ten times as many developers in the first city over the second.

We had to think long and hard about how we would do pricing, we didn't want to have the same problem, but we didn't want the complexity of dynamically pricing every location and skill. We actually ended up modifying our business model to make it work. Companies aren't unhappy about the amount they're spending for ads on job boards, they are unhappy about not getting value for money. So we decided to increase the value for money of the service we provide.

Now if we get a job post in a region where we don't have the traffic to justify the price we're charging we start adjusting our ad campaigns to target that area until we get enough traffic that we can justify that price. About a third of our traffic is from paid sources such as Facebook, Plentyoffish and Google who all offer geotargeting, so doing this is relatively trivial for us, but means our customers are much happier with our service.

Customer development has to feed into your business model and not just into your product.

We balance the needs of developers with the needs of companies

A job board is a two side market, and in any two sided market you need to be sure you're doing customer development on both sides.

The classic example of single sided customer development is the story of the "dating site for guys", where guys post profiles and women message them competing with each other for who can get a date with the guy. The obvious problem is that no women would want to use the site and the whole idea collapses.

Two sided markets have the unique property that you have two sets of customers who often have opposing desires, and you have to build a solution that keeps both sides happy.

We're contemplating the future direction of the recruitment market and we agree with StackOverflow Careers that the answer is moving over to the model used by dating sites, we've watched carefully what Careers 2.0 have done, and from our perspective they've fallen into precisely the "dating site for guys" trap. They've been so focused in building a site that developers want to use they've missed out doing the customer development on the employer side.

Most companies we've spoken to don't want to hunt through profiles to find the candidates they want, if they wanted to do that they would already be hunting through Linkedin or GitHub (some companies like Google have dedicate recruiters who do this; most companies don't). If a company is hiring for developers it means that their existing development teams are stretched, the last thing they want to do is pull developers off existing projects and have them review profiles of candidates who may or may not even be interested in working for them. 

We think we've got a better dating model that will actually serve both developers and employers, and we're going to be rolling it out over the next few months constantly being willing to adapt with what the market actually needs.

Closing note

This article shouldn't be taken as an attack on StackOverflow Careers, the developer job market is a mess and it's becoming dominated by recruiters who are universally hated, we'd much rather see Stack Overflow Careers succeed and crush CoderStack than for both of us to lose out. We're passionate about fixing the developer job market; and we'd much rather see it fixed by one of our competitors than to see it stagnate. In part that's why we're so open, we hope StackOverflow will improve what they're doing. Competition is much more fun that way.

Talking about competition, we actually wrote this article for AppSumo's Lean Startup challenge (if you want to vote for us on twitter you can by clicking here or tweeting with #leanvote63). But we hope it gives an insight into a real world example of lean vs non-lean startup methodologies. 

The Myth of Female Software Developers

One of the recurring debates in the software development community is the lack of female software developers and the underlying reasons. Some of the arguments we've heard recently include:

  • Working with computers is a "solitary" activity which attracts more men than women
  • Females and males have abilities in different areas and it's only natural for certain jobs to be dominated by a particular gender.
  • The male-dominated culture of software development teams is putting females off

However very rarely is any attempt to back up these arguments with hard data, which is unfortunate as when we look at the data it turns out none of these arguments hold true.

We're going to offer a data based analysis and look at the data tracking students from school level (age 14) to university in the UK to see where precisely the gender drop-off occurs.

To get onto a good Computer Science degree you generally need to have a strong grade at A-Level Maths (which students study between the ages of 16-18), and in order to study A-Level Maths you need to typically have grade A/A* at GCSE Maths (at age 14-16). The reason behind these requirements is that performance at Maths A-Level is the best indicator of performance at degree level Computer Science. 

So let's have a look at the gender breakdown at each of these stages and also the data for Maths degrees which have similar requirements:

 

 

 

(Data shows gender breakdown for GCSE and A-Level for students getting A/A* grades)

So as is clearly visible far fewer females study Computer Science than Maths at either A-Level or degree level. So clearly it's not an issue of ability or a failure to meet the requirements to get onto the degree, but rather one of choice. Clearly at age 17 female students who are qualified to get onto a Computer Science course are choosing not to do so.

We can however see that this choice is being made even earlier if we look at A-Level choices between the genders:

 

 

At age 16 girls aren't choosing Computing, but they are choosing IT and Maths, so it's not the technology basis nor the theoretical basis that's putting off female students, but perhaps it could be the combination of the two. IT gives students immediate practical skills, while Maths gives students the theoretical basis needed for studying many other subjects. The theoretical basis of Computing on the other hand can come across as not having any practical applications.

It's also possible that Computing is considered too "high-risk", students who pick it have no idea if they're going to be good at it (as they've never had a chance to do it before) and don't want to risk getting a bad grade that will hurt their chances of getting into a good university. This risk would presumably be worth taking for students planning to study CS at university (i.e. predominantly males).

 

Why is gender equality important for software development?

Inevitably in these debates someone will ask "Why does it matter?" - we strongly believe it matters not only for the software development industry, but for society as whole.

There's a huge shortage of software developers in the UK, the number of software development roles is increasing by approximately 10,000/year. The UK just isn't producing enough talented software developers to meet the demand. When it comes to expanding the talent pool it makes sense to target the groups who are most under-represented.

But it is also an issue for society as whole. Having a 90:10 ratio of males to females for software development should be as shocking as having a 90:10 ratio for literacy. Software development is fast becoming one of the fundamental skills of the 21st century as technology starts to dominate every industry. Of the 26 billionaires the web has produced in the last decade, only one has been female. Only a tiny fraction of technology companies started today are started by female technologists. By neglecting female adoption we're creating the potential for huge disenfranchisement issues in the future.

How can we fix it?

Students by-and-large don't study Astronomy because their love of Dopplr shift equations, but rather because their love of space. Similarly we should make clearer the link between theoretical Computer Science and the practical side of web and mobile applications that many students use on a daily basis.

Movies like The Social Network are just as important as outreach programs, making that link part of societal knowledge. We need to project the image that Computer Science lets you build cool projects.

Introducing CS at any earlier age would help too, both with increasing interest and allowing students to try it without risking damaging their future career prospects. Last year saw the introduction of GCSE Computing which means students can now chose to study it at age 14. We won't see statistics on uptake for a couple of years but we can be hopeful that it will mean an increase in the number of female students studying the subject.

What Software Developers Watch on TV

We've been running a big ad campaign on Facebook targeting software developers in the UK (for our developer job board), however one of the problems we've found in targeting our ads is that most software developers don't list terms like "programming" or "software development" in their interests (only about 5% of developers do). So naturally we started thinking about other ways we could reach developers on Facebook.

Then it hit us, why not target developers by the TV shows they watch, so following a quick survey of our developer friends we made a short-list of the TV shows that came up most frequently removing those shows which have near universal popularity (i.e "Family Guy" which is listed by 22.5 million users on Facebook).

We then ran our ad campaign against all of these TV shows narrowing our demographics to only target males over the age of 21 in the UK. We also ran the same advert against a user base that is made up completely of developers (same demographics), this gave us a benchmark click-through-rate (CTR). By dividing the CTR on the TV show ads by our benchmark rate we got an estimate of the percentage of a shows viewers who were developers.

The TV shows we tested were Battlestar Galactica, Star Trek, The IT Crowd, Firefly, Babylon 5, Monty Python, and the Big Bang Theory. We also tested Mystery Science Theatre 3000 but due to not getting enough page impressions to draw a meaningful conclusion we've dropped it from our results. 

Without further ado the results of our testing:

  • Battlestar Galactica (18.9%)
  • Star Trek (13.1%)
  • The IT Crowd (12.7%)
  • Firefly (10%)
  • Babylon 5 (9.6%)
  • Monty Python (9.4%)
  • Big Bang Theory (6%)

All of these shows clearly have sizable fan-bases among software developers (we'd expect a show chosen at random to have a result of approximately 1% given the demographics we're targeting), but we were surprised at the outliers. We neither expected to see the Big Bang Theory at the bottom of the pack, nor Battlestar Galactica at the top with almost 20% of the fan-base being software developers (within our target demographics).

Disclaimer: Obviously you should take this data with a pinch of salt, fans who list a TV show on their Facebook page may not be representative of the typical fan, and the demographic targeting we did on our ads filters out females and under-21s both groups which are much less likely to be software developers. 

If you have any comments (or suggestions how to target developers) feel free to drop us a tweet @coderstack - if you've enjoyed this post please share it on Facebook or Tweet it !

Edit: In response to some of the comments we've received we'd like to clarify that we also ran adverts targeting female developers but these were run separately. We didn't use the data from these ads as the CTR was too low to be statistically meaningful.

How In-Page Analytics Reduced our Bounce Rate by 30%

For startups paying for user testing is often infeasible on a large scale, however we found In-Page analytics can prove just as (if not more) valuable in understanding the user experience.

We initially tried out three products Userfly, ClickDensity and Mouseflow as they all have reasonable pricing and offer free-trials. ClickTale and CrazyEgg also operate in this space but we chose not to try either of them (ClickTale is expensive; CrazyEgg doesn't offer a free-trial).

Adding any of these products to a website is fairly trivial, like with Google Analytics you just have to drop some javascript code into the pages you want to track. 

We ended up settling with Mouseflow which offered three type of analytics we found useful:

  • User recording 
  • Click heatmaps
  • Viewpoint maps

The first two proved critical, watching user recordings and analysing the heatmaps pointed out key flaws in our design.

In particular:

  • Users looking at the job listings were clicking on the row containing the job (which wasn't a link) rather than the job title itself (which was the appropriate link).
  • Users on specific skill pages (such as the Perl jobs page) often scrolled through the jobs and afterward seemed lost with the mouse hovering all over the place. Watching the user recordings made it obvious they were looking for a way to get back to the main page and couldn't find a way to do it.

By simply making the rows clickable and adding a clearer link back to the main page from skill pages (total time to make these changes and deploy was less than an hour) we reduced our bounce rate by 30%. As the majority of our traffic (at the moment) comes from paid adverts this makes a huge difference.

As a result of watching user recordings we also noticed that users looked at jobs belonging to the same industry. A user was more likely to view two completely unrelated jobs in the same industry than similar jobs across different industries. So we added industry classification to jobs. Our game developer jobs page is now more popular than any of our language specific pages.

The viewpoint analytics offered by Mouseflow came as a bonus, they meant we started thinking about design in ways that didn't even occur to us before hand. 

On our main page there's a huge drop off of users as we go down the page. Most users only look at the top of the page and at the first few job listings (looking at our Google Analytics confirmed this held for click-throughs as well; jobs at the top of the list received more views than jobs at the bottom). Interestingly the same behaviour isn't visible on the skill specific pages, users seem much happier to scroll and there's almost no drop-off as we go down a page. It seems that while the job listings are holding the user's interest they're willing to keep scrolling down.

So next up on our todo list is figuring out how to redesign our pages using this information to increase visibility of all the jobs we list.

Going forward monitoring In-Page analytics is going to be as important to us as tracking traditional website analytics.