I built a web app that aggregated entry-level remote software engineering job listings from multiple job boards. The system automatically updated and posted new listings every 10 to 90 minutes.
I initially hosted the platform on a Hetzner VPS, then migrated to AWS Lightsail for more affordable hosting in Seoul, South Korea. I used Docker to containerize the app and set up Nginx as a reverse proxy. The tech stack included Ruby on Rails for the backend, Python for data processing, React for the frontend, and PostgreSQL for the database.
In November 2024, I revamped the data parsing logic by switching to Flask and Jinja2 templates. When I revisited the project in May 2025, I discovered that LinkedIn had implemented stricter anti-scraping protections.