👥 226 job seekers have signed up so far.
Browse real job-offer stories

See how people actually got hired.

Search real stories by role, salary, location, source of hire, interview process and what finally worked. Use these stories to understand the market before your next application or offer negotiation.

55Stories
8Verified offers
15Countries
16 / 38Median / Mean applications
Latest job wins

11 matching stories

Filtered by your criteria. Clear all

Cold outreachFull-timeRemote

Junior Data Scientist at a Manchester retailer: a public dashboard analytics directors search for

I was a PhD candidate in statistics in Manchester. I'd been working on my thesis for about two years when I decided I needed to find commercial work. Partly because the funding situation had changed, partly because I'd realised, late, that I wanted to leave academia. I had no commercial experience. I had three published papers, one of which had been cited fifty times in a small sub-field. I'd taught two undergraduate modules. I'd built a small simulation framework in R that nobody other than me used. The CV looked like a CV for a postdoc, not for a junior data scientist. Cold emailing hadn't worked when I'd tried it for a week. I'd sent twelve emails to data teams in Manchester and London and got one polite reply. The thing that worked was a public dashboard. I'd been wanting to learn dbt and Streamlit. I picked a topic, UK retail footfall, using publicly available data from one of the data trusts, and built a dashboard over six weekends. It wasn't elegant. It worked. I put it on a free Streamlit hosting tier and tweeted about it once. About two months later the head of analytics at a mid-sized retailer in Manchester found the dashboard via a Google search while researching a specific footfall topic. He didn't contact me through the dashboard. He searched for my name, found my LinkedIn, and sent me a message asking if I was open to a junior data scientist role. The interview process was three rounds over five weeks. Round one was a technical screen with two senior analysts. They gave me a piece of their data, a retail transaction dataset, and four questions. I had a week. I sent back a six-page Jupyter notebook with the answers, three caveats, and a writeup. They'd been hoping for code rather than narrative. I gave them both. Round two was a case study presentation. The brief was to take one of the answers from the take-home and turn it into a fifteen-minute presentation for a non-technical stakeholder. I rebuilt one section from scratch, simplified the visualisations, and presented to a panel of five: three analysts, the head of analytics, one product manager. The questions afterwards were about what I'd cut and why. Round three was a team chat with three other junior data scientists who'd be my peers. Less of an interview, more of an "is this person tolerable to work with" check. The offer was £25,000 base, the higher end of the junior band. I asked for £28,000, citing the four months of search, the depth of the process, and a slightly higher quote I'd received from a competing offer. They came back at £28,000. I said yes. I'd sent five formal applications in total.

NegotiatedJob boardFull-timeRemote

Five months, 400 applications, one interview, and finally the offer

Five months of searching, more than 400 applications across Indeed and LinkedIn, and a single interview to show for it. I started out cautiously optimistic. I had customer service experience, I was applying to remote roles that looked like a good fit, and I assumed something would land within a few weeks. It didn't. I kept a spreadsheet to track everything, and watching the row count pass 100, then 200, then 300 with no callbacks wore me down. I started doubting my resume, my cover letters, the whole approach. I rewrote the resume twice. I even applied to roles a step below my experience just to get any response. Still nothing. Some weeks I'd send 30 or 40 applications and hear back from none of them. The silence got exhausting in its own way. Around the four-and-a-half-month mark, a Customer Service Representative posting on Indeed finally went somewhere. A screening call, then a full interview, the only one in the entire search. I thought it went well, but after months without feedback I couldn't tell. When the offer came in, it was below what I needed for the role to actually work financially. So I countered. I was scared to, because this was my one shot and I didn't want to lose it over a number. I spelled out exactly what I needed: $42,000. I gave my reasoning and sent it. Then they went quiet for what felt like forever, and I was sure I'd overplayed it and blown the only opportunity I'd had in five months. Then they came back and met my number exactly. I accepted on the spot.

Job boardFull-timeRemote

From stay-at-home parent to frontend developer on four applications

After two years of teaching myself, freelancing, and blogging while raising my family, I felt ready to apply for a full-time role. There were months where I wondered if I was cut out for this, weeks where the kids were sick and I barely opened my laptop, and more than a few projects I dropped halfway through once I realised I'd gone about them the wrong way. But every misstep taught me something, and my portfolio started to look like the work of someone who knew what they were doing. When I finally started applying, I was selective about it. I sent four applications in total: one straight to a company whose product I used and admired, and three through a job board via a recruitment agency. I put real time into each one: tailoring the cover letter, making sure the portfolio was clean and loaded quickly, and double-checking that the code I linked to was something I was proud of. Two of those four came back with interview invitations. The first one moved fast, and within a couple of weeks I had an offer: a fully remote frontend developer role based in the UK, paying £30,000 a year. I accepted without much hesitation. The interview felt manageable because I'd been preparing for two years. I'd talked about my work at meetups and conferences, written up my thinking on my blog, and taken on freelance clients who asked hard questions. So by the time I sat down with the hiring team, explaining my decisions and walking through my code felt natural.

✓ Offer verifiedJob boardFull-timeRemote

QA Engineer at a Manchester software company after 24 applications: take-home in the first reply

I'd been working in QA for three years, splitting my time between manual testing and building out automation suites, mostly in Selenium and then Playwright once that became our team's preferred tool. When I decided to move, I wanted something fully remote and ideally a step up in responsibility. I set a rough target of around 25 roles and spent about two weeks working through listings on Indeed and LinkedIn Jobs, filtering hard for remote positions in the UK. Some ads were clearly outdated or vague about the actual stack, so I skipped those and focused on companies where the listing gave me enough detail to write a tailored cover letter. By the end I'd sent out 24 applications and was bracing for the usual silence. The Manchester software company that hired me was different from the start. They replied within 48 hours, which caught me off guard. I'd already half-forgotten applying. There was no recruiter call. Their first reply came with a take-home task attached. They sent over a Figma file of a checkout flow and a staging URL, and asked me to write structured test cases covering the key scenarios, then build a small Playwright suite to automate the critical path. It was a realistic, well-scoped brief, not one of those tasks that expands into eight hours of work. I spent an evening on the test cases, thinking through edge cases like empty cart states and failed payment responses, then wrote the Playwright scripts the next morning. I kept the structure clean and added a short README explaining my decisions. Two video calls followed. The first was technical. A senior engineer walked through my submission with me, asked why I'd prioritised certain scenarios, and we talked through how I'd scale the suite as the product grew. The second was a team-fit conversation with the engineering lead, much more relaxed, focused on how I collaborate with developers and product when bugs surface late in a sprint. At the end of that second call they offered me the role: QA Engineer, fully remote, £34,000. I took it. Start to offer was nineteen days, which felt fast after some of the drawn-out processes I'd heard about from friends.

ReferralFull-timeRemote

How I got a Software Engineer role at GoCardless via a payments-team referral

By the end of June I'd been job-hunting for three months. The numbers weren't great. I'd sent 64 applications through job boards and LinkedIn Easy Apply, and I'd heard back from three. Two rejected me at the CV stage. The third moved me to a recruiter screen and then went silent for six weeks. I was a backend engineer at a small fintech, but the team had shrunk twice in the previous year and I'd stopped learning anything new. The plan was to land somewhere serious about payments. The problem was that every application I sent looked like every other one sitting in the same inbox. My CV was the same CV everyone else had. My cover letters were rephrased versions of the job ad. The breakthrough was a person. A friend I'd worked with two companies ago had joined GoCardless eight months earlier on the payments team. We had drinks. I described what I was after, somewhere serious about payments infrastructure, not too big, with engineers who weren't allergic to writing about how the system worked. He asked a few questions about my recent work on idempotency keys and then said he could pass my CV straight to the hiring manager. The recruiter call landed two days later. Thirty minutes, mostly logistics: salary range, notice period, why I was looking. She'd read my friend's note, and the questions felt aimed at me specifically rather than at a stack of similar candidates. The technical stages ran across a fortnight. Two coding interviews, one a production-style task on their toy ledger, one a more standard data-structures hour. A system design round where I walked through a webhook delivery system with retries, signing and ordering guarantees. That round went well partly because I'd built something similar before and partly because I'd actually thought about the problem before the interview rather than during it. The final round was a forty-five minute conversation with the engineering director. It wasn't really an interview. He wanted to know what I wanted to be doing in two years, what I'd push back on if I disagreed with a technical call, and how I'd handled the worst on-call rota of my career. The offer arrived a week later: £60,000. Fair, but a few percent below where I'd pinned my expectations. I asked, in writing, whether there was room to move on the base, walking through the responsibilities of the role and a competing late-stage conversation. They came back forty-eight hours later at £65,000. I accepted the next morning. I'd have gone to my friend at the start. I'd have written about my work publicly before I needed to.

DeclinedLinkedInFull-timeRemote

Turned down Mews' Product Manager role after back-channel reference checks

Eighteen applications into my search, Mews offered me a Senior PM role: €96k base, equity, fully remote from Amsterdam. I almost took it. The interviews were very good. The hiring manager returned again and again to ownership, to giving PMs real authority over the roadmap, to moving fast without the slowness of a big company. After every round I felt positive. The equity conversation was clear, the base was the number I wanted, and remote work meant I did not have to move. I was close to signing without thinking much more about it. Before I signed, I spent two evenings on LinkedIn looking for people who had been PMs at Mews in the last two years. I found two of them and sent short, direct messages, saying I had an offer and asking for fifteen minutes. Both answered inside one day, which already told me something. What they said was too similar to ignore. The roadmap was rewritten about every six weeks, not because the market changed but because senior leadership kept reversing their own decisions. Two PMs had left in the quarter before my offer, and neither departure was planned. One of them told me she spent her last month rebuilding a spec she had already delivered once. That detail stayed with me more than the rest. I declined the next day. I kept the message short and professional and gave no specific reason. After that it took longer than I hoped to find something else, and for a few weeks I asked myself if I had decided correctly. But I never regretted it.

LinkedInFull-timeRemote

Frontend Lead at an Amsterdam software company from a LinkedIn post about React 19 migration

About six weeks before I got this role, I was frustrated after a difficult phase of migrating our legacy product, about 200,000 lines of React code, to React 19 with concurrent features enabled. Most articles I had read about React 19 skipped the difficult parts, so I wrote an honest LinkedIn post instead: what we migrated, how we did the concurrent rendering rollout, which assumptions were wrong, and the two weeks we spent looking for small tearing bugs in our data-fetching layer. I did not expect much. It was a long technical post with code snippets and a lot of "here's what we got wrong". Inside one week three recruiters wrote to me. I was also running my own search at the same time, 14 applications to companies in Amsterdam and to remote-friendly companies, but the messages that came to me were of a different quality. One Amsterdam software company was clearly better than the rest. Their recruiter quoted specific paragraphs from my post in the first message, so I knew that somebody technical had read it before writing to me. The process confirmed this. Instead of a LeetCode round or a whiteboard session about binary trees, they asked me to do a code review on a real part of their own codebase, with the permission of the team that owns it. I spent about three hours on it, wrote comments as I would for a colleague, and explained the trade-offs instead of only marking problems. It felt like real work, and that made it much easier to stay interested through all five rounds. The offer came 42 days after that first message. The base was 82,000 EUR, full-time and fully remote. Before signing I negotiated two things: remote-first as a written policy and not only as a tolerance, and a four-day week instead of five. They agreed to both, and I signed.

OtherFull-timeRemote

Solutions Engineer at Highbeam: a community-forum answer turned into a recruiter call

The recruiter call came out of nowhere. I'd answered a customer's question on Highbeam's community forum eighteen months earlier and had forgotten about it. I'd been a solutions engineer at a mid-sized software company in Toronto for four years. Happy enough, but I'd been keeping an eye on roles at companies whose products I actually used. Highbeam was on that list. I'd been a power user for two years and had spent enough time in their community forum to know who the active people were. The forum answer was about how to integrate Highbeam with a specific data warehouse setup. There was no good answer in their docs. I'd built a workaround for my own team and posted a writeup with code samples. About twenty people upvoted it. One person emailed me afterwards to say thanks. Then I forgot about it. A year and a half later, a recruiter at Highbeam reached out. She'd been searching the forum for active community members who might fit a solutions engineer opening, found my writeup, and looked up my LinkedIn. The opening message was specific. She named the writeup, the role, and the salary band. She didn't ask for a resume in the first message. That came in the second. The first call was forty-five minutes with the recruiter. She'd read my LinkedIn and knew what I'd been doing at my current company. The salary band she'd quoted was meaningfully better than what I was making, and that's the part that got me to take the second call. Round two was a technical chat with the SE manager. Sixty minutes. We talked through how I'd handle three real customer scenarios. It was a useful conversation, the kind where I learned something about their product I hadn't known. Round three was a customer demo. I had a week to prepare. The brief: imagine the customer is a fintech evaluating Highbeam against two competitors, you've got thirty minutes, walk us through a demo that addresses their specific concerns, detailed in this brief. I built a real demo on their free tier with a synthetic dataset. It ran forty minutes including questions. Two of the four people on the panel said it was the best demo they'd seen in the role's interview process. Round four was a "tell me about your worst customer" round with two senior SEs. I had a real story. Round five was the head of customer success. Thirty minutes, mostly cultural. The offer was CA$100,000 base plus a quarterly bonus tied to retention metrics. I asked for CA$108,000, citing the depth of the process and the demo round. They came back at CA$105,000 plus an additional week of vacation. I signed. The writeup I posted eighteen months earlier was more useful than any resume I've ever written. It worked because it was specific, public, and answered a real question.

LinkedInFull-timeRemote

Junior Backend Engineer at a Madrid startup: a GitHub project that got 200 stars

I finished the bootcamp in March with no commercial experience and a portfolio that felt very thin. For the next weeks I applied to anything with "junior" or "graduate" in the title: 47 applications in about two and a half months, mostly through LinkedIn. Almost nobody answered. Some companies never replied at all, a few sent automatic rejections after a few hours, and I started to ask myself if a bootcamp certificate was worth anything in a market full of computer science graduates. The thing that changed everything was a side project that I almost did not publish. I had built a small open-source tool on the Spotify API that creates personal listening statistics. Nothing revolutionary, but I was proud of the structure of the code and of the documentation. I posted a Show HN on Hacker News, mostly to get feedback, and it grew much more than I expected. About 200 stars in the first month, some good comments about the architecture, and a few people opening issues and pull requests. I checked my GitHub notifications again and again, all day. About two weeks after the post, an engineer at a Madrid startup starred the repository and then sent me a DM on LinkedIn. He said the queue management pattern I used had interested him, and that they were hiring. The interview process had three stages. First a technical call, where we went through the project together and talked about how I would scale it. Then a take-home exercise: build a small queue worker that processes async jobs with retry logic, which felt like normal daily work and not like a whiteboard puzzle. Finally a calm conversation with two senior engineers, more about culture than a test. The whole process took about two weeks once it started. The offer was €26k, which is low for Madrid. I negotiated a little, without much result. But the team is almost all senior people, and they pair-program with juniors on purpose, and for me right now that is worth more than a few thousand euros more. I said yes.

✓ Offer verifiedJob boardFull-timeRemote

Accountant at a Berlin scale-up: boring job-board path, useful remote-first negotiation

I was an accountant with seven years of experience in Berlin. I was looking for a senior role in industry, finance lead at a scale-up, after most of my career in mid-size accounting firms. I knew what I wanted, I knew the salary range, and I had a clear idea of which companies would have the right balance between structure and chaos. I sent eighty-seven applications in nine weeks. I recorded every one in a spreadsheet: date, company, role title, source, answer. The response rate was 38%. Most of the answers were polite rejections. Twenty-one went to a recruiter call. Six went to an interview with a hiring manager. Three went to a final round. A Berlin scale-up was one of the three. I applied through their careers page. The role description was clear and specific, which most job descriptions are not. They listed the team, the systems, the current problems, and the salary range. I applied because of the salary range. Most German job descriptions do not show one, and the fact that they did made me think the company was probably better to work for than the average. The recruiter call was forty minutes. She had read my CV carefully. She asked specific questions about a system change I had managed at my last firm and what I learned from it. The conversation was professional and without surprises, which for a recruiter call is the best compliment I can give. The interview with the hiring manager was with the finance lead who would be my boss. Sixty minutes. We went through three real situations from their work: the integration of the accounts of an acquired company, a question about multi-currency reporting, and a question about their deferred-revenue policy. I had real opinions about all three. We disagreed about one. After that the conversation became better. The second interview with the hiring manager was more technical, a cash-flow modelling exercise with real anonymised data. Two hours, at home. I sent back a clean model, with my assumptions written in a separate tab. They asked about three of the assumptions. I had an answer for each one. The final round was with the CFO. Thirty minutes. He wanted to know what I had been wrong about in my last job, and what I did about it. I had a real example. The offer was €50,000 base. That is below the market for this role. The job description had shown a range of €48,000 to €60,000, so I was at the bottom. I asked for €55,000 and explained my seven years of experience. They came back at €54,000 and a remote-first arrangement, although the job description had said hybrid, two days per week. I signed. There is no clever lesson here. Sometimes the boring method works. I am proud that I tracked every application from the beginning to the end, that I knew my situation every week, and that I was not surprised when an offer came.

Move closer to your next job offer

Get expert help with your CV, interviews, salary negotiation and job search.