Distributed Systems Engineer - Platform
Distributed Systems Engineer (Platform) pozíció az Inngestnél, ahol a Systems Engineerek a termék magját építik: a tartós (durable) végrehajtási réteget, a sorkezelő (queueing) rendszert, az állapottárolókat (state store) és az ezeket összekötő elosztott rendszereket. Az Inngest régóta fennálló fejlesztői problémákat old meg újszerű módon, első a maga nemében megoldásokat és olyan eszközöket hozva létre, amelyeket a fejlesztők a mindennapi munkafolyamataikban használnak, ezért a UX és a teljesítmény elsődleges. Egy Systems Engineernek egyszerre kell generalistának és specialistának lennie, felelve a sorkezelő rendszer belső működéséért (pl. debounce, concurrency over time), az állapottárolóért (terabájttól petabájtig terjedő tárolás kezelése), a köztes API-rétegekért, és olykor a magas szintű SDK-kért, amelyekkel a felhasználók építenek. A munka közvetlenül hat több millió fejlesztőre. A szerep megkívánja a munkaidő-átfedést az amerikai PST-vel; ideálisan a San Francisco-i Bay Area-ban, de erős jelöltek bárhol élhetnek az Egyesült Államokban, és a meglévő systems engineering csapat hetente több napot személyesen dolgozik San Franciscóban.
Feladatok
- ▹Megoldások tervezése és megvalósítása a sorkezelő rétegben, állapottárolóban és végrehajtási rétegben (pl. concurrency over time vagy függvény-debounce)
- ▹Áteresztőképesség (throughput) és késleltetés (latency) javításának tervezése és megvalósítása másodpercenként több százezertől több millió kérésig terjedő terhelésnél
- ▹Hozzájárulás a rendszerarchitektúrához és infrastruktúra-változtatásokhoz a cég növekedésével
- ▹Együttműködés a csapattagokkal a belső adatok kitárására metrikatárolókon, API-kon és a felhő UI-ban hostolt ügyféldashboardokon keresztül
- ▹Munka a backend mérnökökkel olyan API-k tervezésén, amelyek használhatók az Inngest felhődashboardban, dev serverben és CLI-kben
- ▹Az Inngest termék dogfoodingja és ötletek fejlesztése fejlesztésekre, funkciókra vagy integrációkra
- ▹Kommunikáció a felhasználókkal GitHubon, e-mailben és Discordon keresztül
- ▹Technikai specifikációk írása funkciókhoz és dokumentáció a felhasználóknak
Elvárások
- ▹Több éves munka elosztott rendszereken
- ▹Két vagy több év szakmai tapasztalat Góval vagy hasonló statikusan típusos nyelvekkel
- ▹Skálát kezelő rendszerek tervezése vagy a tervezésükben való közreműködés
- ▹A mérnöki kompromisszumok megértése és helyes döntések meghozatala a rendelkezésre álló megközelítésekről
- ▹Annak ismerete, hogyan kell megfigyelni, monitorozni és karbantartani a tervezett rendszereket
- ▹Az egyszerűség értékelése, még akkor is, ha nehezebb megtervezni és megépíteni
Előny
- ▹Tapasztalat megfelelőséggel (SOC2, ISO27001, HIPAA stb.) és annak elérése, hogy az a biztonsági megközelítéseket szolgálja
- ▹Tapasztalat vagy szilárd ismeret a hálózatkezelésben
- ▹Tapasztalat rendszerek kezelésében és karbantartásában (pl. SRE szerepek)