Contact
hiring mobile ai-automation data

On Hacker News, Job Seekers Now Outnumber Hiring Posts 2.3 to 1. For Native iOS and Android It Is 4 to 1

The supply side of the HN hiring threads, 2023 to 2026. Seeker posts per hiring post rose 2.2 times overall, 5.4 times for iOS and 5.9 for Android, 2 times for React Native. Method, script and limits included.

My last post counted the demand side of Hacker News hiring threads: native iOS and Android mentions fell by about two thirds between 2023 and 2026. The first post left one question open: what happened on the other side. Hacker News runs a second monthly thread, “Ask HN: Who wants to be hired?”, where people post what they do and what they look for. If hiring posts shrank, did seekers shrink with them?

They did not. I counted both threads for the same 46 months. Same caveat as before: keyword mentions are not roles, and HN is one corner of the market.

What the counts say

Average top-level posts per thread that mention each term, 2023 H1 (six threads) against 2026 H2 so far (four threads, July to October). “Seekers per hiring post” is the seeker average divided by the hiring average.

Term Hiring posts, 2023 H1 → 2026 H2 Seeker posts, 2023 H1 → 2026 H2 Seekers per hiring post Change
All posts 371.7 → 248.5 379.8 → 568.2 1.02 → 2.29 ×2.2
iOS 19.0 → 6.2 15.0 → 26.8 0.79 → 4.28 ×5.4
Android 18.8 → 5.8 12.7 → 22.8 0.67 → 3.96 ×5.9
React Native 11.3 → 9.8 23.7 → 40.2 2.09 → 4.13 ×2.0
Any mobile term 54.5 → 26.2 65.8 → 102.0 1.21 → 3.89 ×3.2
Full stack 93.5 → 58.8 88.5 → 162.2 0.95 → 2.76 ×2.9
Backend 89.7 → 56.8 81.2 → 187.2 0.91 → 3.30 ×3.7
AI or LLM 55.2 → 144.5 18.8 → 307.5 0.34 → 2.13 ×6.2

In early 2023 the two threads were the same size, about 375 posts each. By autumn 2026 hiring posts per thread are down a third and seeker posts are up by half. October 2026 has the largest seeker thread in the whole window, 693 posts against 263 hiring posts.

Three readings, in order of how well the data supports them.

Native iOS and Android got hit hardest. Seeker posts that mention iOS went from 0.8 per hiring post to 4.3, and Android from 0.7 to 4.0. That is a 5.4 and 5.9 times change against 2.2 for the whole thread. Both numbers move the same way. They overlap, since many posts mention both, so they are one signal and not two.

React Native is the one mobile term that held. It started with more seekers than hiring posts (2.1) and ended at 4.1, a 2.0 times change, slightly less than the thread average. Part of that is a high starting base: a lot of seekers already listed React Native in 2023. It means React Native did no worse than the market, which is a low bar.

Mobile as a whole is not much worse than full stack. Any-mobile moved 3.2 times, full stack 2.9 times and backend 3.7 times. If you hold the view that mobile fell off a cliff while full stack stayed fine, this sample does not support it. Native mobile fell off a cliff. Full stack and backend also lost hiring posts and gained seekers, by a smaller factor than native.

The AI row grew the most, 6.2 times, but it is the least trustworthy one. Seekers can add “AI” to a skill line and hiring posts add it to company blurbs, so both sides can inflate the keyword.

Monthly counts for 2026 H2, so the October figures above can be checked:

Month Hiring posts iOS Android Seeker posts iOS Android
2026-07 257 7 6 489 25 20
2026-08 226 4 4 555 23 21
2026-09 248 3 4 536 22 22
2026-10 263 11 9 693 37 28

Limits

  • Counts are keyword mentions in free-text posts. A seeker who writes “iOS, Android, React Native, Python” counts once for each term, whether or not they want a mobile job.
  • A seeker thread is self-selected. I assume people who post there skew toward those without a quick alternative, but I have no data on that. It measures supply and not open roles, and I did not check how many seeker posts are duplicates or automated.
  • The 2026 H2 average uses four threads, 2023 H1 uses six. October 2026 is a single large seeker thread. Without it the all-posts ratio is 2.16 instead of 2.29, iOS 5.0, Android 4.5, React Native 3.65. Native goes up because October was the best month for native hiring in the window, 11 iOS and 9 Android hiring posts against 3 to 7 in July to September. The monthly counts are below.
  • Ratios of two noisy averages are noisy. iOS and Android hiring posts are about 6 per thread now, so one extra iOS post per thread moves the iOS ratio from 4.3 to 3.7.
  • This is HN only. Indeed Hiring Lab reports similar direction and size for Android and iOS postings on a different baseline, and that is the cross-check I have, not a confirmation of the ratio.

Method

Same source as the first post: HN Algolia API, threads by the whoishiring account, created on or after 2023-01-01, retrieved 2026-10-28, top-level comments only, one count per post per term. The script takes the thread title prefix as a parameter, so it covers both kinds:

import json, urllib.request, urllib.parse, time, re
B = 'https://hn.algolia.com/api/v1/'

def get(u):
    for _ in range(6):
        try: return json.load(urllib.request.urlopen(u, timeout=40))
        except Exception: time.sleep(3)
    raise SystemExit('fail ' + u)

def threads(prefix):
    out, page = [], 0
    while True:
        d = get(B + 'search_by_date?' + urllib.parse.urlencode({
            'query': f'"Ask HN: {prefix}"', 'tags': 'story,author_whoishiring',
            'hitsPerPage': 100, 'page': page}))
        out += d['hits']
        if page >= d['nbPages'] - 1: break
        page += 1
    out = [t for t in out if t['title'].startswith(f'Ask HN: {prefix}')
           and t['created_at'] >= '2023-01-01']
    return sorted(out, key=lambda t: t['created_at'])

P = {'iOS': r'\bios\b', 'Android': r'\bandroid\b', 'React Native': r'react[ -]native',
     'full stack': r'full[ -]?stack', 'backend': r'back[ -]?end',
     'AI/LLM': r'\bai\b|\bllms?\b|\bgenerative\b',
     'any mobile': r'\bios\b|\bandroid\b|react[ -]native|\bflutter\b|\bswiftui\b|\bkotlin\b|\bmobile\b'}

for prefix in ('Who is hiring', 'Who wants to be hired'):
    for t in threads(prefix):
        tid, txt, pg = t['objectID'], [], 0
        while True:
            d = get(B + 'search_by_date?' + urllib.parse.urlencode({
                'tags': f'comment,story_{tid}', 'hitsPerPage': 1000, 'page': pg}))
            txt += [(h.get('comment_text') or '') for h in d['hits']
                    if str(h.get('parent_id')) == tid]
            if pg >= d['nbPages'] - 1: break
            pg += 1
        row = {'thread': prefix, 'month': t['created_at'][:7], 'top_level': len(txt)}
        row.update({k: sum(1 for x in txt if re.search(p, x, re.I)) for k, p in P.items()})
        print(row)

What I take from it

For someone whose résumé says iOS or Android and nothing else, the HN numbers show about four seeker posts per hiring post, up five to six times since 2023. A candidate who can also show React Native or backend work sits in the buckets that moved less. AI moved the most, for the reason above. That matches the shape of the first post, and I would still not treat HN as the whole market.

What I did not measure: seniority of the seekers, how many posts got a reply, location, or anything outside HN. If you hire mobile engineers, does a ratio of about four candidates per native opening match what you see in your own pipeline?

Get a note when the numbers refresh

I update this research when new hiring and pay data comes out. Leave your email and I will tell you when it changes. Nothing else.

Every message will say how to unsubscribe. You can also write to [email protected] at any time and your address is deleted.

Contact

Let's
connect

Questions about engineering leadership, mobile or AI-enabled teams? Send a note.

Location Valencia, Spain CET Timezone
From Ukraine 🇺🇦 Kyiv
LinkedIn @oleh-veheria Connect with me
Languages 4 Languages EN, UA, RU, ES