Building SiraHub: An Android Job Marketplace for Ethiopia
SiraHub started from a fairly simple observation: the job-search apps most Ethiopians end up using weren't built for this market. Salary fields default to dollars. Filters assume job categories that don't map to how hiring actually works locally. And most of them treat "job seeker" as a single type of user, when in practice someone applying for a retail role and someone applying for a senior developer role want very different things from an app.
Starting with the two sides of the market
A job marketplace only works if both sides — employers and seekers — get something better than what they already have. For employers, that meant a dashboard where posting a role, reviewing applicants, and managing a company profile could all happen in one place, without needing to sift through unrelated applications the way generic listing sites often produce. For seekers, it meant salary ranges quoted in Ethiopian Birr from the start, skills-based matching instead of keyword guessing, and a one-tap application flow built around uploading a CV once and reusing it everywhere.
Why native Android, and why Firebase
We built SiraHub as a native Kotlin Android app rather than a cross-platform wrapper, mainly for performance on the mid-range Android devices most users in Ethiopia actually carry — a lot of hybrid frameworks add overhead that shows up as lag on exactly the phones our users have. Firebase and Firestore handle authentication, real-time job listings, and chat between employers and applicants, with Firestore security rules doing the heavy lifting on making sure a seeker can't read another seeker's private conversation, or an employer can't edit a job post that isn't theirs.
Getting those security rules right took more iteration than the UI did. Chat permissions in particular are easy to get subtly wrong — allowing a message to be read doesn't mean it should always be allowed to be sent, and message ordering has to be handled carefully, since relying on device clocks instead of a server timestamp can quietly reorder a conversation in a way that's confusing for users.
AI-assisted search, without overcomplicating it
SiraHub uses Gemini AI for a few specific things: parsing an uploaded CV into structured fields automatically, suggesting relevant job posts based on a seeker's profile, and helping surface listings for looser, more natural search queries instead of forcing exact keyword matches. The goal wasn't to bolt AI onto the app for its own sake — it's used only where it removes friction that would otherwise fall on the user, like manually retyping CV details the app can already extract.
Where it stands now
SiraHub is live on Google Play, with an active base of job seekers and employers posting real listings across Addis Ababa and beyond. It's still under active development — push notifications for new matching jobs, a more refined employer dashboard, and expanded AI-assisted matching are all in progress. Most of what's shipped so far has come directly from watching how people actually use it and fixing the friction points that showed up, rather than building features speculatively.