Back to selected work

Professional work · Full stack

AuroraJobs

Jobs and careers platform for university students, employers, and university career services. I was responsible for the application end to end, in a Ruby on Rails monolith.

Company
AuroraJobs
Period
2021 — 2024
Role
Full-Stack Software Engineer
Scope
The whole application: the student product, the employer portal, the internal dashboard, deployments, and infrastructure.
Status
Finished project

Problem and context

Students looking for a first job and companies hiring junior profiles rarely meet somewhere built for that stage: general job boards treat both as one more case. AuroraJobs put jobs, training, and content around that specific moment.

Who it's forUniversity students taking their first steps, companies hiring junior profiles, and university career services.

What I owned

The application was mine end to end: data modelling, backend, frontend, testing, deployments, and infrastructure. I joined with little experience and the CTO coached me until I could make those calls on my own.

The student product

Profiles, dynamic filters and forms for describing what they were after, job listings, and the full application flow.

The employer product

Panels showing each opening's candidates already ranked, with their video interview and the reject, save, or contact actions on the same screen.

The internal dashboard

The tool the team used to configure all of the above — filters, forms, and ranking criteria — without going through a deployment.

What else it covers

  • Matching engine between students and openings.
  • Analytics dashboards for university career services.
  • auroraHacks, the content side: editorials, events, and a podcast.
  • Deployments and product infrastructure.

Where my part ends

Product made the final call. I took part in shaping ideas, argued about scope, and proposed simpler alternatives when I saw one. I mentored, coordinated, and managed a team of two developers, one junior and one mid: splitting the work, reviewing it, and supporting them day to day.

Decisions

  1. A Rails monolith instead of services

    Situation
    There were few of us, and profiles, openings, matching, applications, content, and analytics all had to be built at roughly the same time.
    What I decided
    Keep everything in a Ruby on Rails monolith, with Sidekiq for async work.
    Why
    At that team size, splitting into services would have added deployments, contracts between parts, and scattered debugging without solving any problem we actually had.
    What changed
    Data model and interface changed together, and a complete feature fit into a short cycle.
  2. Make configurable whatever changed every week

    Situation
    Filters, student forms, and ranking criteria shifted with every product conversation. Each tweak was a development task and a deployment.
    What I decided
    Move them into the internal dashboard and let the team configure them there.
    Why
    What changes for business reasons should not have to go through me to change.
    What changed
    Product adjusted filters and forms without waiting on development, and I stopped receiving tickets that were business decisions dressed as technical work.
  3. Split the work and review it instead of building it all

    Situation
    The product was growing faster than I could write it, and two developers joined the team.
    What I decided
    Split work by area, review their pull requests, and pair when it helped, rather than keeping the hard parts for myself.
    Why
    Hoarding the difficult work meant the team never learned the domain and I became the bottleneck.
    What changed
    A junior and a mid owning their own areas, and architecture decisions argued in review rather than inherited.

Results

  • A live product with a job board, an employer area, careers guidance, content, and analytics.

    EvidenceThe screenshots on this page are from the public product.

  • A full-stack foundation covering modelling, business logic, interface, testing, deployments, and infrastructure.

    EvidenceThe same Rails monolith from 2021 to 2024.

  • A team of two developers with their own areas, reviews, and steady support.

    EvidenceOne junior and one mid I mentored and coordinated.

About the numbersUser numbers, funding, and the exact scope of the infrastructure belong to the company and are not published here.

Stack

  • Ruby on Rails
  • JavaScript
  • Stimulus
  • MySQL
  • Redis
  • Sidekiq
  • Kubernetes
  • Docker
  • TailwindCSS
  • CI/CD