feat: add startup.jobs as a switzerland-wide job source

This commit is contained in:
2026-10-06 15:17:17 +02:00
parent ab659008e6
commit e70ae1e932
4 changed files with 245 additions and 8 deletions
+1
View File
@@ -71,6 +71,7 @@ LinkedIn is swept by `config.ts`'s search families. Everything else lives in `fe
| **scicore.unibas.ch** | Basel | sciCORE's open-positions announcement list; used to be its own separate 08:47 watcher, now just another source |
| **swisscom.com** | Switzerland | Swisscom's own Workday career site, pulled via its public CXS JSON API; small board and mostly German-language, so few survive the filters |
| **more-jobs.ch** | Switzerland | Server-rendered aggregator; keyword sweep of `/recherche?q=`, then one detail fetch per title-filtered candidate (real date + DE/FR check). Reposts of jobs other sources already carry are dropped by normalized title+company |
| **startup.jobs** | Switzerland | Behind Cloudflare: a headless Chrome reads the page's short-lived Algolia search key, then the Algolia index is swept over a Swiss bounding box (split recursively past Algolia's 500-hit cap). Detail pages are fetched in-browser for the DE/FR check; reposts other sources carry are dropped by normalized title+company |
Two of these were dead until recently and are worth knowing about: