11 Finding your future

So, you’ve successfully debugged your CV, with help from chapters 8, 9 and 10. You’ve reflected on who you are in chapter 2 and identified where you can improve your experience as described in chapter 5. Now, how can find an interesting job? How can use your CV, covering letter and any other (mostly written) communication to persuade employers to invite you to an interview? What techniques exist and how can you use your networks to help you? Where can you look? This chapter will help you find your future. 🔭

Coding your future is all very well, but how do you actually get a job? This chapter looks at job searching and networking. Yes but… sketch by Visual Thinkery is licensed under CC-BY-ND

Figure 11.1: Coding your future is all very well, but how do you actually get a job? This chapter looks at job searching and networking. Yes but… sketch by Visual Thinkery is licensed under CC-BY-ND

Your future is bright, your future needs finding, so let’s start finding your future.

11.1 What you will learn

At the end of this chapter you will be able to:

  1. Formulate job search strategies:
    • by role, sector, skills, time, size, quantity, values, culture, network, salary and location
  2. Apply your search strategies to advertised (and unadvertised) opportunities
    • Identify opportunities for finding work, online and face-to-face
    • Identify people in your existing networks who can help you
    • Grow your networks and use them to your advantage
  3. Describe some of the problems with recruitment:
    • for employers
    • for potential employees (like you)
    • Critically evaluate what employers have on offer (beyond the financial incentives)

11.2 Job search strategies

Before we look at where to look for jobs, we need to discuss what to look for. Let’s imagine there is a handy AI-powered function in python called find_jobs() which knows everything about:

  • all the jobs available, regardless of where they are advertised, including hidden ones (see Jonathan’s story of finding hidden jobs in chapter 29)
  • all of your skills, knowledge, values and ambitions
  • every employer in the world, their services, products and values
  • everyone in your social and professional networks, right from first degree connections through to sixth degree connections (Bacon 1994)

Such a function doesn’t really exist yet, but let’s pretend that it does to illustrate some points about job searching. If you were to run the function with no arguments…

…you will be completely overwhelmed with the results. It can be bewildering knowing where to start your job search, because the possibilities are endless. Your search space is huge. It’s like trying to drink from a high-pressure fire hose, see figure 11.2.

Are you thirsty for job opportunities? If you try to find_jobs() without any parameters, you will be overwhelmed by the options, like the graduate in this picture. It’s hard to drink from a fire hose. Thirsty graduate sketch by Visual Thinkery is licensed under CC-BY-ND

Figure 11.2: Are you thirsty for job opportunities? If you try to find_jobs() without any parameters, you will be overwhelmed by the options, like the graduate in this picture. It’s hard to drink from a fire hose. Thirsty graduate sketch by Visual Thinkery is licensed under CC-BY-ND

Thankfully, we can break it down, but there are many parameters and variables in your search that you need to think about. Here are some basic strategies to help you start to decompose the complex problem of job hunting into smaller, more manageable problems you can start to tackle. We’ve already mentioned some:

  1. 👨‍🔬 search by role, see section 11.2.1
  2. 📊 search by sector, see section 11.2.2
  3. 💪 search by skills, see section 11.2.3
  4. 🌍 search by location, see section 11.2.4
  5. 👨‍👩‍👧‍👦 search by network, see section 11.2.5
  6. 💰 search by salary, see section 11.2.6
  7. 🏋️ search by size, see section 11.2.7
  8. ❤️ search by values, see section 11.2.8
  9. 🕰 search by timing, see section 11.2.9
  10. ⚖️ search by quantity, see section 11.2.10

Each strategy has is own strengths and weaknesses, so you’ll probably want to combine more than one and experiment with different strategies as your search progresses over time. No doubt, you’ll have some extra strategies of your own, this is not meant to be an exhaustive list, just a starting point:

11.2.1 Search by role

There are many different roles that studying computing gives you access to besides software engineering. So one strategy is to research the roles described in section 6.3, focus on some you like the sound of and then apply for those kinds of roles. Let’s say you are interested in software engineering. This is a strategy that will help you narrow down a huge number of jobs into something more manageable. For example:

The list of roles in section 6.3 will give you a flavour of some roles to think about, beyond software engineering.

11.2.2 Search by sector

Computing is found in every sector of business and society. This means you won’t just find computing jobs in the technology sector. Although the lines between some sectors are becoming increasingly blurred, you can still narrow down your options by picking a sector you are interested in and pursuing that. For example:

Like many graduate employment guides, the Guardian 300 guide (see section 11.3.1) has good overview of different sectors by breaking down employers by sectors such as:

  • Consulting
  • Public sector
  • Finance

Picking a sector can help you get started, by narrowing what might otherwise be a massive search space. The sector(s) you choose will also determine the kind of salary you can expect, see section 11.2.6.

I’ve got the brains, you’ve got the looks, let’s make lots of money. (Tennant and Lowe 1986)

11.2.3 Search by skills

Is there a specific skill you have that you enjoy using, or a technology you think has a promising future? You could use this as a way to find jobs, for example:

Picking a specific technology can sometimes help you narrow down the options, for example by using these keywords in your search.

11.2.4 Search by location

If you were an estate agent, you might argue that the three most important parameters of your job search are:

  1. Location (Allsopp and Spencer 2000)
  2. Location (Allsopp and Spencer 2000)
  3. Location (Allsopp and Spencer 2000)

So pick a location: Manchester? London? Paris? Berlin? New York? Silly Valley? WFH? The location(s) you choose will determine the options that are available:

… and so on. So locations can help you define (and potentially reduce) your search space. For example, if you’re looking in Manchester, you can get started at git.io/manc. Picking a location can also help you identify networking opportunities for hidden, un-advertised vacancies and making speculative applications, described in section 11.3.4. You could find out about employers by attending free meetup.com or eventbrite.com events in your chosen location. See section 29.3 of Jonathan’s story in chapter 29. Since its a big subject, there’s more information on searching by location in chapter 12.

11.2.5 Search by network

The people in your network can help you find work. It’s not what you know, its who you know, or so the cliché goes. (Spearpoint et al. 1992) The bigger your network, the more opportunities you’ll know about. So a really basic strategy for finding jobs is using your networks. Remember, our find_jobs does just know what you know, it also knows who is in your professional network and the employers they know about, so we could ask it to find opportunities in your professional and social networks:

Your close network probably won’t change that much, the friends and family you trust and rely on. Its important to recognise the importance of more casual acquaintances, or what sociologist Mark Granovetter calls “weak ties”. (Granovetter 1973)

It’s not what you know, its who you know: Networking and personal contacts can be more useful than just knowledge and skills alone, when seeking employment. Networking is an essential part of any job search, your networks can help you now and in the future. One of the things looked at in this chapter is how to build and use your networks to help find the job you’re after. The simplest networking technique is bumping into people, but you need create opportunities for that to happen. Bumped into sketch by Visual Thinkery is licensed under CC-BY-ND

Figure 11.3: It’s not what you know, its who you know: Networking and personal contacts can be more useful than just knowledge and skills alone, when seeking employment. Networking is an essential part of any job search, your networks can help you now and in the future. One of the things looked at in this chapter is how to build and use your networks to help find the job you’re after. The simplest networking technique is bumping into people, but you need create opportunities for that to happen. Bumped into sketch by Visual Thinkery is licensed under CC-BY-ND

Weak ties are people you don’t know as well, but are important for a range of reasons. Research has shown that building networks of weak ties is good for your mental health and can give you an edge in job hunting. (Leslie 2020) Granovetter showed that many job opportunities came through weak ties, rather than strong ones. This is true not just of jobs early on in your career (like now) but also later too. So it is in your interests to continually foster weak connections and be open to serendipitous meetings where you bump into people, as in Figure 11.3. “Bumping into” here, could mean either physical or virtual.

Who is in your network? Grow and use your network, both the strong ties and the weak ties. Weak ties are often the most important when it comes to job hunting. Networks sketch by Visual Thinkery is licensed under CC-BY-ND

Figure 11.4: Who is in your network? Grow and use your network, both the strong ties and the weak ties. Weak ties are often the most important when it comes to job hunting. Networks sketch by Visual Thinkery is licensed under CC-BY-ND

11.2.6 Search by salary

You can also define your search space by salary:

Setting a minimum salary will include or exclude certain employers from your search. To do this realistically, you need to know how much you are worth, see section 11.4.6 and figure 11.5 for some places to start.

Average graduate starting salaries (in £) at the UK’s “top” employers 2007 to 2024, according to highfliers.co.uk (Birchall 2024) Since 2007, graduate salaries have risen from £24,500 to £34,000 in 2024. Note that these are graduate salaries, not internship or placement salaries which tend to be lower. Also note that “top” employers is a highly subjective judgement, lots of good smaller employers don’t feature in this data and they typically pay less than the large multinational employers dominating this sample. The averages also hide significant variations by sector and location, see the salary resources in section 11.4.6

Figure 11.5: Average graduate starting salaries (in £) at the UK’s “top” employers 2007 to 2024, according to highfliers.co.uk (Birchall 2024) Since 2007, graduate salaries have risen from £24,500 to £34,000 in 2024. Note that these are graduate salaries, not internship or placement salaries which tend to be lower. Also note that “top” employers is a highly subjective judgement, lots of good smaller employers don’t feature in this data and they typically pay less than the large multinational employers dominating this sample. The averages also hide significant variations by sector and location, see the salary resources in section 11.4.6

11.2.7 Search by size

Do you see yourself working for a large multi-national corporation or a bedroom startup? Perhaps you prefer something in-between? There’s advantages and disadvantages to each, but like all our other parameters, picking an organisation size can help you get started. In some cases, size will also define the type or organisation, for example:

Likewise, if you know you want to work for a multi-national, that gives you a list of employers you can target. Picking a size, can help you identify employers you would like to work for. Table 11.1 summarises some of the when and where some employers typically advertise.

Table 11.1: The practicalities of applying for vacancies, internships, placements, graduate jobs and schemes in large multinational employers compared to small and medium sized enterprises (SMEs)
Large employers SMEs
Where Advertise broadly Less likely to advertise on big jobs boards
When Vacancies open earlier in the academic year Vacancies tend to open later in the academic year
How Typically multistage applications, several rounds of interviews Typically shorter application and interview processes
Who Typically receive high volume of applications per vacancy Typically receive lower volume of applications per vacancy
Process Unlikely to consider speculative applications May consider speculative or informal applications

11.2.8 Search by values

Besides the mundane importance of balancing the books, what does a given employer actually value? How do an employers values match your own, the values_match below? Reasonably or not at all? How much of your soul do you need to sell? All of it, or just some of it? This a difficult question to compute, see section 6.5, but let’s imagine we can:

An employers values are usually reflected in its organisational culture. What is the employers culture like? What sort of structure would you fit into, see figure 11.6? Would you enjoy working there and would you felt like you belonged? How can you actually find this out? Do you need to sell your soul? If you’re struggling with these questions, you may need to do some more soul searching, see section 6.5 and chapter 2. Talk to employees too, this is why networking is important, see section 11.2.5.

Culture and values are often reflected in an employers structure. Finding out about an employers structure will help you begin to understand their culture and values, see section 6.5. Creative Commons Attribution-NonCommercial-NoDerivs org charts comic by Manu Cornet at bonkersworld.net/organizational-charts

Figure 11.6: Culture and values are often reflected in an employers structure. Finding out about an employers structure will help you begin to understand their culture and values, see section 6.5. Creative Commons Attribution-NonCommercial-NoDerivs org charts comic by Manu Cornet at bonkersworld.net/organizational-charts

Our find_jobs() function is useful, if only as a thought experiment, but there’s still the strategic questions of when you use the function and how often so lets look at those next.

11.2.9 Search by timing

For graduates and undergraduates, the time of year you are looking can determine what jobs you can look for. At the beginning of the academic year in September you might target large multinational organisations. If you’re not successful, you could switch to smaller employers later in the academic year. For example “It’s October, so I’m applying to large employers” or:

Armed with knowledge of when to apply you can start to target employers. Timing is important because in some cases it will determine the type of organisation you apply to.

11.2.10 Search by quantity

Should you optimise the quantity of your applications or the quality, see figure 11.7? Will your job applications be like a brute-force attack or something more targeted?

As you target employers, what will your strategy be? At one extreme you could optimise the quantity of your applications, aiming to do as many as you can. This is shown in the left of the picture by the blunderbuss (or scattergun) strategy. You make lots of applications but don’t target or tailor them much in the hope that some will hit the target if you point your weapon (that’s your CV) in approximately the general direction of your target employer. At the other extreme you could optimise the quality of your applications by spending more time researching the employer and carefully aiming your shots like a sniper would, in the right of the figure. Which strategy is best? Blunderbuss sketch by Visual Thinkery is licensed under CC-BY-ND

Figure 11.7: As you target employers, what will your strategy be? At one extreme you could optimise the quantity of your applications, aiming to do as many as you can. This is shown in the left of the picture by the blunderbuss (or scattergun) strategy. You make lots of applications but don’t target or tailor them much in the hope that some will hit the target if you point your weapon (that’s your CV) in approximately the general direction of your target employer. At the other extreme you could optimise the quality of your applications by spending more time researching the employer and carefully aiming your shots like a sniper would, in the right of the figure. Which strategy is best? Blunderbuss sketch by Visual Thinkery is licensed under CC-BY-ND

Figure 11.7 shows two extreme approaches to job hunting, in reality you’ll probably want to strike a balance between quality and quantity. Finding jobs by quantity can set a pace and rhythm to your job search:

* “I will do one application per week during term time”

or set a time limit for what you’re prepared to do:

* “I'll spend two hours per week finding and applying for jobs”

If you find yourself:

  • Making a small number of applications, you may need to consider applying more widely and spending less time on each application
  • Making a large number of applications, you may need to consider applying less and spending more time on each application

This raises the question, how big is a small or a large number of job applications, which isn’t easy to answer. Doing fifty applications over a couple of months may mean the quality of each application is too low.

11.3 Where can you for look for jobs?

Using our fictional find_jobs function we’ve described and discussed some basic strategies to get you started. Sadly no such function exists yet, so armed with a rough idea of what you’re looking for, where can you actually look?

The marketplace for job searching and job hunting advice is incredibly overcrowded. Employers spend huge amounts of money on recruitment and this is reflected in the enormous range of jobs boards, which are often accompanied by advice on job hunting. There are five basic kinds of places you can look for jobs:

  1. 🎓 Undergraduate and graduate jobs boards, such as gradcracker.com and your University jobs board e.g. CareerConnect etc see 11.3.1
  2. 👀 General jobs boards and search engines that index them, such as Google jobs, see section 11.3.2
  3. 🎨 Portfolio style, such as LinkedIn, Github and others which allow you to publish a public profile, see section 11.3.3
  4. 🎰 Speculation, approaching employers to find out about un-advertised vacancies, see section 11.3.4
  5. 🕵️ Recruiters, get a recruiter to help you, see section 11.3.5

11.3.1 For graduates and undergraduates

The following resources are specifically tailored to undergraduate students and graduates looking for jobs in Europe and beyond:

Gradcracker.com allows you to search for opportunities in Computing at gradcracker.com/search/computing-technology/jobs shown here. You can refine your search for internships, placements and graduate jobs (circled in red) by their duration: Summer (including those open to first year students), 1 to 6 months, Year-long and Insight Events described in section 5.3. You may need to zoom in to see the detail in this figure.

Figure 11.8: Gradcracker.com allows you to search for opportunities in Computing at gradcracker.com/search/computing-technology/jobs shown here. You can refine your search for internships, placements and graduate jobs (circled in red) by their duration: Summer (including those open to first year students), 1 to 6 months, Year-long and Insight Events described in section 5.3. You may need to zoom in to see the detail in this figure.

If you’re a University of Manchester student, the Wednesday Waggle is your weekly roundup of opportunities before and after graduation. The jobs newsletter is delievered to your inbox by email and is also archived at waggle.cs.manchester.ac.uk. What’s with all the bees? Bees symbolise community and work ethic and have been a Manchester icon since the industrial revolution in the 19th Century. Waggle dance artwork by Visual Thinkery is licensed under CC-BY-ND 🐝If you’re a University of Manchester student, the Wednesday Waggle is your weekly roundup of opportunities before and after graduation. The jobs newsletter is delievered to your inbox by email and is also archived at waggle.cs.manchester.ac.uk. What’s with all the bees? Bees symbolise community and work ethic and have been a Manchester icon since the industrial revolution in the 19th Century. Waggle dance artwork by Visual Thinkery is licensed under CC-BY-ND 🐝If you’re a University of Manchester student, the Wednesday Waggle is your weekly roundup of opportunities before and after graduation. The jobs newsletter is delievered to your inbox by email and is also archived at waggle.cs.manchester.ac.uk. What’s with all the bees? Bees symbolise community and work ethic and have been a Manchester icon since the industrial revolution in the 19th Century. Waggle dance artwork by Visual Thinkery is licensed under CC-BY-ND 🐝

Figure 11.9: If you’re a University of Manchester student, the Wednesday Waggle is your weekly roundup of opportunities before and after graduation. The jobs newsletter is delievered to your inbox by email and is also archived at waggle.cs.manchester.ac.uk. What’s with all the bees? Bees symbolise community and work ethic and have been a Manchester icon since the industrial revolution in the 19th Century. Waggle dance artwork by Visual Thinkery is licensed under CC-BY-ND 🐝

11.3.2 For any job seekers

The following resources are aimed at anyone (not just undergraduates and graduates) looking for jobs anywhere in the world. Let’s start with Google job search shown in figure 11.10.

Keywords like job, internship and engineer in an ordinary (vanilla) google search will trigger Google’s job search product, an enhanced search feature that aggregates listings from many different jobs boards. Here’s an example from clicking through on the results of a Google search for software internship (google.com/search?q=software+internship). You can refine your search results by title, location (my IP address means that Manchester has been selected automatically), date posted, type, company type and employer shown across the top of the screenshot. See the text below for more examples.

Figure 11.10: Keywords like job, internship and engineer in an ordinary (vanilla) google search will trigger Google’s job search product, an enhanced search feature that aggregates listings from many different jobs boards. Here’s an example from clicking through on the results of a Google search for software internship (google.com/search?q=software+internship). You can refine your search results by title, location (my IP address means that Manchester has been selected automatically), date posted, type, company type and employer shown across the top of the screenshot. See the text below for more examples.

Google job search is a good starting point because it crawls and indexes lots of different jobs boards. It doesn’t index everything, see Google’s job hunting service comes to UK (Kelion 2018), but its a pretty good place to start.

11.3.3 Pushing a public professional profile

Jobs boards use the pull approach to job hunting, you search for and pull vacancies of interest. Alongside this, you can also try a push approach by publishing a professional public profile online.

Publishing a portfolio of your work online will allow employers and recruiters to come and find you, as well as you searching for them. Employers shouldn’t expect you to have an online portfolio and you might not want to have one, but it can help. If you choose to have a public profile, you can link to it in the header of your CV, see section 8.6.1.

Linkedin is a social media service which allows you to build a professional network and public profile. It also allows employers to advertise their job vacancies. Social media caveats aside (see section 3.8), LinkedIn can be useful tool for networking with other professionals and finding a job, see table 8.1. You can see Polly’s profile at linkedin.com/in/pollymorphism

Figure 11.11: Linkedin is a social media service which allows you to build a professional network and public profile. It also allows employers to advertise their job vacancies. Social media caveats aside (see section 3.8), LinkedIn can be useful tool for networking with other professionals and finding a job, see table 8.1. You can see Polly’s profile at linkedin.com/in/pollymorphism

  • Github.com allows you to publish code in public repositories that everyone can see, see figure 11.12. If you’re comfortable doing it, publishing your software online can be a good way of demonstrating your technical skills and knowledge but be careful publishing your coursework online, see section 8.6.5. Nothing says “I can build software” quite like “here’s one I made earlier”. (J. H. Blair 1958)
Github is commonly used to host open source software development projects. As of June 2022, GitHub reported having over 83 million developers and more than 200 million repositories, including at least 28 million public repositories. The screenshot shows a profile of Computer Science student Amish Shah: github.com/amishshah Thanks Amish for permission to use your profile as an example, find out more about Amish in chapter 23.

Figure 11.12: Github is commonly used to host open source software development projects. As of June 2022, GitHub reported having over 83 million developers and more than 200 million repositories, including at least 28 million public repositories. The screenshot shows a profile of Computer Science student Amish Shah: github.com/amishshah Thanks Amish for permission to use your profile as an example, find out more about Amish in chapter 23.

  • Stackoverflow.com You’ve probably already cut-and-pasted solutions from the question and answer forum Stack Overflow. You can also create a profile on Stack Overflow too, see figure 11.13. As of March 2021 the site had over 14 million registered users, and had received over 21 million questions and 31 million answers.
An example of using stackoverflow to create a public profile by asking and answering technical questions online. The screenshot shows a profile of former Computer Science student Pez Cuckow: stackoverflow.com/users/193376/pez-cuckow

Figure 11.13: An example of using stackoverflow to create a public profile by asking and answering technical questions online. The screenshot shows a profile of former Computer Science student Pez Cuckow: stackoverflow.com/users/193376/pez-cuckow

So, if you’re happy to publish your work online, services like LinkedIn, Github and Stackoverflow can help you find jobs using a push approach alongside more conventional pull approaches described in section 11.3.1 and 11.3.2. They can also be used to augument your CV, with the stuff that doesn’t fit onto one or two printed pages. Digital profiles can be also be useful if you’re looking for freelance, contract or part-time work.

11.3.4 Speculative applications

Some job vacancies are not advertised. Employers may deliberately hide them or make them difficult to find so they aren’t swamped with lots of unsuitable applicants. Smaller employers do not always offer the kinds of experience described in section 5.3. In these cases, a speculative application might the only way to get a foot in the door, see figure 11.14. In popular sectors which can be harder to break into like video games, a speculative application is worth considering alongside getting a recruiter to help you, described in section 11.3.5.

Are you playing your cards right? The stakes are high in the game of employment because there might be a job in it for you. Like gambling, speculative applications can sometimes pay off, especially for hidden or unadvertised vacancies. You will improve your chances and strengthen your hand by researching the employer (see section 13.3), using your professional networks to connect and playing your (computational) joker, see section 7.7. Public domain image of The Cardsharps painting by Caravaggio on Wikimedia Commons w.wiki/6R6q adapted using the Wikipedia app ♣♥♠♦🃏

Figure 11.14: Are you playing your cards right? The stakes are high in the game of employment because there might be a job in it for you. Like gambling, speculative applications can sometimes pay off, especially for hidden or unadvertised vacancies. You will improve your chances and strengthen your hand by researching the employer (see section 13.3), using your professional networks to connect and playing your (computational) joker, see section 7.7. Public domain image of The Cardsharps painting by Caravaggio on Wikimedia Commons w.wiki/6R6q adapted using the Wikipedia app ♣♥♠♦🃏

To improve your chances of winning the bets placed in your speculative applications you need to:

  • Do some research about the employer, see section 13.3
  • Make sure you’ve debugged your CV or résumé, see section 8.9
  • Have written a compelling and personalised covering letter, see section 8.12

Your speculative application might take several different forms:

  • traditional CV and covering letter, by email see section 8.12
  • Phone call, these can work well with smaller employers, have your (verbal) “elevator pitch” ready see section 8.12
  • Digital or virtual approach, eg. via LinkedIn or similar see section 11.3.3
  • Speaking to employers in person e.g. at networking or other public events IRL

Whatever form your speculative application takes, the networks that we described in section 11.2.5 can be useful in approaching employers including:

  • virtual: people you’ve met online, for example in places like those described in section 11.3.3
  • actual: people you’ve met in real-time face to face, offline and IRL
  • professional contacts: employers who have visited your University or you know via some other means
  • personal contacts: friends, family, fellow students etc

Making speculative applications may involve you cold calling employers, by email, phone or online. It’s a bit of a gamble, but it can sometimes work. The people in your networks can help you to make job applications that aren’t completely cold.

Smaller employers are more likely to be receptive to speculative job applications than larger employers. While speculative applications are a gamble, sometimes they will pay off.

11.3.5 What about recruiters?

Recruiters can help you find work and they operate in every industry sector. They are sometimes called “head-hunters”, and there are two basic kinds that can help you:

  1. Recruiters employed directly by an employer, for example in the human resources (HR) department of a given organisation.
  2. Recruiters who are self-employed or work for a recruitment agency. They typically earn money from the number of interview candidates and successful hires they provide for their clients. They are often deliberately coy about who their clients are.

Recruiters are usually not technical people, so don’t expect them to any knowledge of software engineering (for example) - that isn’t usually their skill set. Although recruiters can help you, it is worth being wary of recruiters as shown in figure 11.15, especially if they work for an agency rather than being directly employed by the organisation you are interested in.

The autocomplete algorithm of a well known search engine gives you an idea of what some people think about some recruiters. This doesn’t mean you should avoid recruiters completely, just be careful how you use their services and pay close attention to who they work for.

Figure 11.15: The autocomplete algorithm of a well known search engine gives you an idea of what some people think about some recruiters. This doesn’t mean you should avoid recruiters completely, just be careful how you use their services and pay close attention to who they work for.

Some recruiters are very good and can help you, especially if they work direclty for the employer you are interested. There are some recruitment agencies that specialise in helping employers recruit graduates, these may be useful to you. Others specialise in particular sectors such as aswift.com who focus on video game development. Some executive search firms specialise in fields where employers struggle to find suitable candidates, such as computing.

However some recruiters are not very good, and don’t always provide a valued service for employers or potential employees like you. This is why you sometimes see no recruiters or no agencies on job adverts. So be wary of recruiters, and remember that some recruiters work primarily for their clients (employers) not you.

In most cases you shouldn’t have to pay recruiters up front but job scammers will sometimes pose as recruiters so beware. Talking of job scammers, there’s some things you need to be wary of when you are job hunting:

11.4 Buyer beware

When you’re looking for job you’re acting as both a buyer and a seller.

  1. SELLING: You’re selling your services in a marketplace, for the best price you can get
  2. BUYING: You’re buying into the culture and values of an employer (see section 6.5), who are trying to sell themselves to you.

As a buyer and seller, you should be wary of the following:

  • 🤕 Broken recruitment practices: section 11.4.1
  • ⏰ Time sink: section 11.4.2
  • 🤣 Over-specified jobs: section 11.4.3
  • 😭 Unpaid internships: section 11.4.4
  • 📈 Overselling: section 11.4.5
  • 📉 Underselling: section 11.4.6
  • 🤔 Compromises: section 11.4.7
  • 🤥 Job scammers: section 11.4.8
  • 🐷 Job spammers: section 11.4.9
  • 🤮 Rejection: section 11.4.10
  • 🎢 The rollercoaster: section 11.4.11

11.4.1 Beware of broken recruitment practices

There’s no shortage of people saying that recruitment and hiring are broken in various ways, see figure 11.16.

According to the creator of the C++ programming language, Bjarne Stroustrup: “There are only two kinds of languages: the ones people complain about and the ones nobody uses”. (Stroustrup 2020) The same principle can be applied to hiring, there are only two kinds of recruitment practices, the ones people complain about and the ones nobody uses. CC BY-NC portrait of Stroustrup by Julia Kryuchkova on Wikimedia Commons w.wiki/GA3 adapted using the Wikipedia app

Figure 11.16: According to the creator of the C++ programming language, Bjarne Stroustrup: “There are only two kinds of languages: the ones people complain about and the ones nobody uses”. (Stroustrup 2020) The same principle can be applied to hiring, there are only two kinds of recruitment practices, the ones people complain about and the ones nobody uses. CC BY-NC portrait of Stroustrup by Julia Kryuchkova on Wikimedia Commons w.wiki/GA3 adapted using the Wikipedia app

Here is a small sample of complaints about recruitment, both from employers and employees. First, on dodgy CVs and résumés:

… and the fallibility of the interview process…

  • Job interviews are a nightmare — and only getting worse(Stewart 2023)
  • Why you should never consent to a coding test in an interview(Woolley 2020)
  • I cheated on my Microsoft interview(Sweeney 2019)
  • What are some common criticisms of Cracking the Coding interview?(Murashenkov 2019)

… and the general unreliability of hiring …

Despite their Americentric approach, these articles raise important points. Many of them claim that while hiring is broken, they’ve got a solution to fix it. There’s no escaping the fact that the personnel an organisation chooses to hire is one of the most important decisions it can make. Consequently, hiring the wrong people can lead to all sorts of (expensive) problems. Unfortunately, it seems likely that important decisions on hiring will remain complicated, time consuming and error-prone.

So beware of broken recruitment practices. Hiring is broken. Recruitment can be biased, bureaucratic, discriminatory, expensive, inefficient and painful for many people. It can be unfair and doesn’t always select the best candidates for the post anyway. Hiring is not just unncessarily unpleasant for you, it’s the same for employers too. Knowing this will help you prepare for its many limitations and be patient.

So, if you’re finding your job hunt unpleasant, you are not alone. Many recruitment practices are flawed but they are probably the “least worst” system we have, at least for now.

We are experiencing some turbulence in recruitment. Please return to your seats and fasten your seatbelts. 🤕

11.4.2 Beware of the time sink

Finding employers that you are interested in and submitting high quality job applications takes lots of time. Many students under estimate the time needed to job hunt. It can be a very time consuming process for everyone, both employers and candidates alike, see figure 11.17.

Playing the game of job hunting can be a big drain on your time and some time wasting is unfortunately inevitable. Employers will waste some of your valuable time and you’ll probably waste some of theirs too. Beware of the recruitment time sink. Public domain image of a DualShock PlayStation controller by Evan Amos on Wikimedia Commons w.wiki/3VFp adapted using the Wikipedia app

Figure 11.17: Playing the game of job hunting can be a big drain on your time and some time wasting is unfortunately inevitable. Employers will waste some of your valuable time and you’ll probably waste some of theirs too. Beware of the recruitment time sink. Public domain image of a DualShock PlayStation controller by Evan Amos on Wikimedia Commons w.wiki/3VFp adapted using the Wikipedia app

Even after you have managed to:

  1. Identify and articulate your skills and knowledge, see chapter 2
  2. Understand what you’re interested in, see chapter 2
  3. Update your CV, see chapter 8
  4. Consider all your options, see chapter 6
  5. Target employers or sectors of interest

.. the actual business of applying described in this chapter can be very bureaucratic. Any interviews you have will take time to prepare for (see chapter 13) and you’ve got loads of other calls on your time like studying and having a social life.

One way to tackle this problem is to schedule some time every week when you work on applications, see chapter 15. However, there’s no getting away from the fact that finding a job can consume a significant amount of your time. So beware of the time sink. ⏰

11.4.3 Beware of over-specified jobs

Employers and recruiters routinely over-specify job descriptions, see figure 11.18. A good example of this is, when the Swift programming language was first publicly released in 2014 at the Apple Worldwide Developers Conference (WWDC) in California, job adverts instantly appeared asking for programmers with 5 years experience in Swift! How can anyone have five years experience in a programming language that’s only just been made public?! Aside from the people who developed the language, like Chris Lattner, the recruiters and employers must have had a long search trying to find their candidate. It must have taken them at least five years!

“We’re looking for someone aged 22-26 with 30 years of experience”… Sometimes employers have impossible requirements so not meeting all of them shouldn’t stop you applying. Meme from starecat.com

Figure 11.18: “We’re looking for someone aged 22-26 with 30 years of experience”… Sometimes employers have impossible requirements so not meeting all of them shouldn’t stop you applying. Meme from starecat.com

The moral of this Apple story above is, if you don’t meet all the criteria in a job specification, that shouldn’t stop you applying. Most job adverts are over-specified as wishful employers dream up their ideal candidate.26 Many employers will overstate their requirements in the hope they get their dream candidate. You might look at the job description and think, I’ve only got 70% of what they’re asking for, so I won’t bother applying. The reality is, if you’ve got 60% of what they are asking for, you should probably apply. It’s unlikely that anyone will meet 100% of the job requirements.

If you see things on job adverts you don’t understand or are not sure about, go and find out about them. There’s a good chance it will be similar to something you already know about, or you can self-educate yourself to fill any gaps. But beware of employers over-specifying jobs. 🤣

11.4.4 Beware of unpaid internships

In the UK, it is illegal to employ people without paying them a salary. However, there are exceptions which can allow employers to take on unpaid interns depending on how they classify their interns employment status. See for example:

In science, technology and engineering, unpaid internships are much less common than in other sectors as demand for skilled scientists, technologists, engineers and mathematicians (STEM) is generally high. Some employers, particularly startups, may offer company equity (such as shares) as an alternative to a salary - again you should be wary of this. Unless you’re very lucky, the chances are those shares will probably be worthless. Although many startups aspire to become Unicorns, very few do. Like many people, I don’t endorse unpaid internships, and I recommend you avoid them completely, see section 11.2.6 and figure 11.19.

Unpaid internships have been likened to modern slavery. You are vulnerable to exploitation when taking unpaid work. (Ournalist 2017; Montacute 2018) CC BY-SA image of footcuffs by the Collectie Stichting Nationaal Museum van Wereldculturen on Wikimedia Commons w.wiki/6XaW adapted using the Wikipedia App

Figure 11.19: Unpaid internships have been likened to modern slavery. You are vulnerable to exploitation when taking unpaid work. (Ournalist 2017; Montacute 2018) CC BY-SA image of footcuffs by the Collectie Stichting Nationaal Museum van Wereldculturen on Wikimedia Commons w.wiki/6XaW adapted using the Wikipedia App

An unpaid internship might claim to be giving you:

  • some “experience” or “exposure”
  • equity-for-work
  • something impressive for your CV
  • opportunities to “build up your portfolio”
  • improved access to paid employment at some vague (but unspecified) point the future

Unfortunately, in the worst case, taking an unpaid internship leaves you vulnerable to exploitation by ruthless employers looking for cheap or free labour. There are campaigns to ban them. (Alcazar and Schmit 2023) Unpaid internships have been likened to modern slavery, see figure 11.19, so I recommend you avoid them. 😭

There is one exception to this: expenses paid work-shadowing for a short period of time (two or three weeks) such as spring insights described in section 5.3. Otherwise, if you can’t find paid employment, doing voluntary work for a charity or non-profit is a much safer bet and has mental health and social benefits too, see section 5.3.

11.4.5 Beware of overselling

When people try to sell you something, you will naturally be wary of overselling and fake news, see figure 11.20.

Beware of false or misleading information in the jobs marketplace. Pool tables and free snacks are nice but are what is it actually like to work for a given employer? Are employers really as good as they say they are? Are you as good as you say you are? Or is it fake news? Overselling sketch by Visual Thinkery is licensed under CC-BY-ND

Figure 11.20: Beware of false or misleading information in the jobs marketplace. Pool tables and free snacks are nice but are what is it actually like to work for a given employer? Are employers really as good as they say they are? Are you as good as you say you are? Or is it fake news? Overselling sketch by Visual Thinkery is licensed under CC-BY-ND

There’s two kinds of fake news that are common in the jobs marketplace:

  1. Employers overselling themselves: Recruitment can be a bit of a beauty contest, with employers trying to show you their best side. Some employers may make promises they can’t deliver but a quick look on services like glassdoor.com will help you evaluate employers. Even better, talk directly with actual employees of the organisation, both current and former. Is their employer really as good as they say they are?
  2. Candidates exaggerating their achievements: It can be tempting to oversell yourself in the marketplace. An experienced reader or interviewer will be able to spot your fake news and find you out, see chapter 8 debugging your future

So beware of fake news, overselling and other bullshit, see section 8.12.2. Don’t believe the hype. (Ridenhour et al. 1988) 📈

11.4.6 Beware of underselling

Likewise, you should make sure you don’t undersell yourself. Know your value (financial), know your values (see chapter 2) and try to understand how that fits with a given employer. What are the employers stated values? When it comes to financial value, it is easy to find out about salaries, for example see:

Salaries in the UK for interns (and graduates) range from minimum wage to £50k and over, with everything in between. So beware of under-selling yourself, know your value, see 11.2.6. Some employers see students as a form of cheap labour that can be exploited because you’re not “qualified” until you graduate. I’d think twice before working for such an employer, computing skills are in demand and there are plenty of other employers who will treat you with more respect. 📉

Knowing your value is crucial if you’re going to negotiate any job offers you receive, see section 13.4.

11.4.7 Beware of compromises

Engineering usually involves compromises and trade-offs, see figure 11.21. You will have to make some compromises in engineering your future. This might be in the design and implementation of your career, such as your salary, location, employer, values or something else.

The design of a general-purpose processor, in common with most engineering endeavours, requires careful consideration of many trade-offs and compromises. (Furber 2000) That’s also true for your engineering your future too, what compromises and trade-offs are you happy to make? CC BY-SA portrait of microprocessor designer Steve Furber by Peter Howkins on Wikimedia Commons w.wiki/544E adapted using the Wikipedia app Thanks Steve for permission to use your photo, find out more about Steve’s story in chapter 22.

Figure 11.21: The design of a general-purpose processor, in common with most engineering endeavours, requires careful consideration of many trade-offs and compromises. (Furber 2000) That’s also true for your engineering your future too, what compromises and trade-offs are you happy to make? CC BY-SA portrait of microprocessor designer Steve Furber by Peter Howkins on Wikimedia Commons w.wiki/544E adapted using the Wikipedia app Thanks Steve for permission to use your photo, find out more about Steve’s story in chapter 22.

To work out what compromises and trade-offs you are prepared to make, you may need to revisit the issues discussed in chapter 2. 🤔

11.4.8 Beware of the job scammers

Most job adverts are legitimate but you are vulnerable when you are job hunting. You may become more vulnerable over time if you are getting repeated rejections (remember: repeated rejection is quite normal). Unfortunately there are some shady characters out there looking to exploit your vulnerability through various kinds of employment fraud. (Hinds 2017; Advisor 2023) You should be wary of anyone asking you for:

  • Money up front - be very suspicious
  • Excessive personal data such your birth date, passport number and bank details. These could be used for identity theft, fraud or other criminal activities
  • Suspicious contact details and generic non-work free email addresses, e.g. gmail, outlook.com etc (S. Smith and Rosser 2021)
  • See more examples in figure 11.22 and at google.com/search?q=job+scams
Beware of the job scammers. You should be highly suspicious of illegitimate companies, poorly-written job adverts, dodgy contact details and emails, unrealistic salaries, job offers without an interview and being asked for money up front. Spotting the signs of job scammers by gov.uk is licensed under Open Government Licence v3.0 (S. Smith and Rosser 2021)

Figure 11.22: Beware of the job scammers. You should be highly suspicious of illegitimate companies, poorly-written job adverts, dodgy contact details and emails, unrealistic salaries, job offers without an interview and being asked for money up front. Spotting the signs of job scammers by gov.uk is licensed under Open Government Licence v3.0 (S. Smith and Rosser 2021)

Any job that seems a bit too good to be true earn more money working from home!, is likely to be a scam. (Advisor 2023) Reputable employers (and jobs boards) will not try to scam you, but you should beware of job scammers if you find yourself looking for employment off the beaten track. Like Pinocchio, its quite easy to spot lies once you recognise some of their nosey signals. 🤥

11.4.9 Beware of the job spammers

You’ll hopefully be able to spot (and avoid) the job scamming but its harder to avoid the job spamming. It isn’t particularly difficult to find lots of job adverts and by the time you’ve registered with a few different systems described in section 11.3, you’ll find your inbox full of email, your notifications relentessly pinging and your LinkedIn feed full of vacancies. Recruiters will start “reaching out” to you about roles you’re not even remotely interested in. Welcome to jobspam, see figure 11.23.

Spam, spam, spam, spam… lovely spam! Wonderful spam! Job adverts are just another form of advertising, so when you’re looking for a job, beware of the jobspam. Spamming is named after a Monty Python sketch where customers are relentlessly offered spam they aren’t interested in. (Palin and Jones 1972) Jobspam is the same but for job adverts. CC BY-SA picture of the menu from Monty Python’s “Spam” sketch by Eduardo Unda-Sanzana on Wikimedia Commons w.wiki/6T8F adapted using the Wikipedia app

Figure 11.23: Spam, spam, spam, spam… lovely spam! Wonderful spam! Job adverts are just another form of advertising, so when you’re looking for a job, beware of the jobspam. Spamming is named after a Monty Python sketch where customers are relentlessly offered spam they aren’t interested in. (Palin and Jones 1972) Jobspam is the same but for job adverts. CC BY-SA picture of the menu from Monty Python’s “Spam” sketch by Eduardo Unda-Sanzana on Wikimedia Commons w.wiki/6T8F adapted using the Wikipedia app

So beware of the jobspam, jobspam, jobspam, jobspam, jobspam… lovely jobspam! Wonderful jobspam! 🐷 (Palin and Jones 1972)

11.4.10 Beware of rejection

For most people, rejection is a normal part of applying for jobs. Rejection can take a heavy toll on your mental health described in chapter 3 and it is often a struggle. Some employers won’t even bother to reply to reject you, see Amish’s story in chapter 23 for example. Welcome to the employer black hole described in section 8.2 and shown in figure 11.24.

Rejection is a normal part of applying for jobs, some of your applications may disappear without trace into the employer “black hole” described in section 8.2. Larger employers with a strong gravitational force on candidates like you are likely to behave like supermassive black holes for job applications. This doesn’t mean you shouldn’t bother applying, but that you need to think about how to make your application stand out and avoid taking it personally if/when you don’t hear back. CV black hole sketch by Visual Thinkery is licensed under CC-BY-ND, based on an original image of the supermassive black hole in Messier 87 created using the CHIRP algorithm by the Event Horizon Telescope team via Wikimedia Commons w.wiki/3RCa

Figure 11.24: Rejection is a normal part of applying for jobs, some of your applications may disappear without trace into the employer “black hole” described in section 8.2. Larger employers with a strong gravitational force on candidates like you are likely to behave like supermassive black holes for job applications. This doesn’t mean you shouldn’t bother applying, but that you need to think about how to make your application stand out and avoid taking it personally if/when you don’t hear back. CV black hole sketch by Visual Thinkery is licensed under CC-BY-ND, based on an original image of the supermassive black hole in Messier 87 created using the CHIRP algorithm by the Event Horizon Telescope team via Wikimedia Commons w.wiki/3RCa

If you’re getting too many rejections or all your applications are sucked into black holes, it might be because you need to :

  • debug your CV and job applications some more (see chapter 8)
  • develop a better job search strategy (see this chapter, chapter 11)
  • broaden your job search (see chapter 6)
  • pay attention to your mental health, rejections can make you anxious and depressed (see chapter 3)

So beware of rejection, try not to take it personally. Beware of rejection, it is (unfortumately) a normal part of job hunting. 🤮

11.4.11 Beware of the rollercoaster

There are highs and lows in job hunting, you will ride the job search rollercoaster shown in figure 11.25. There will be highs, you’ll be invited to interviews, but there will be also be lows too, such as the inevitable rejections we discussed in the previous section 11.4.10. It will be a rollercoaster, which ends on the high of a job offer you accept. Fasten your seatbelt, enjoy the ride and good luck with your applications and interviews! May the road rise with you! (Lydon and Laswell 1986)

Are you ready to ride the emotional rollercoaster of job hunting? A tech project is like… sketch by Visual Thinkery is licensed under CC-BY-ND

Figure 11.25: Are you ready to ride the emotional rollercoaster of job hunting? A tech project is like… sketch by Visual Thinkery is licensed under CC-BY-ND

So beware of the rollercoaster, it has ups and downs. 🎢

11.5 Breakpoints

Let’s pause here. Insert a breakpoint in your code and slowly step through it so we can examine the current values of your variables and parameters.

* PAUSE ⏸️
  • What are your current job search strategies?
  • How could they be improved or tuned?
  • How many jobs should you apply for?
  • What are the strengths and weaknesses of using each of the parameters of find_jobs described above?
  • Why is it important to build your network?
  • How can recruiters help you?
  • Why do recruiters have a bad reputation?
  • How long does it take to apply for a job?
  • Should I optimise for quality or quantity of job applications?
  • How can you deal with the inevitable rejections that come during job hunting?
* RESUME ▶️

11.6 Summarising your job search

Too long, didn’t read (TL;DR)? Here’s a summary:

Your future is bright, your future needs finding. Finding your future will help you to test your future. Testing your future will help you to start coding your future.

  • We’ve discussed some of the problems with recruitment, both for employers and prospective employees like you. Knowing about these limitations will help you navigate them during your job search
  • We’ve looked at job search techniques that will help you find opportunities you care about. Figuring out what you want to do is tricky at times but it usually works out well in the end.
  • Before applying the search criteria, making successful applications to get that interview offer, there’s more search techniques we need to look at. In the next part, chapter 12: Moving your future, we’ll look at three of most important search criteria of all: location, location, location.

This chapter is under construction because I’m using agile book development methods, see figure 11.26.

Just like the Death Star, this galactic superweapon book is under construction using agile book development methods. Image of agile weapon engineering in Star Wars via Wikimedia Commons w.wiki/5N6q adapted using the Wikipedia app

Figure 11.26: Just like the Death Star, this galactic superweapon book is under construction using agile book development methods. Image of agile weapon engineering in Star Wars via Wikimedia Commons w.wiki/5N6q adapted using the Wikipedia app