Wir sind Bahnhof.se, einer der größten Internetdienstanbieter in Schweden und darüber hinaus. Darüber hinaus bieten wir unseren Kunden noch viel mehr: VPN, IP-Telefonie, Cloud-Dienste usw.
Wir stellen einen neuen Entwickler ein, der unser Team mit Fähigkeiten und Wissen erweitern und bereichern wird.
Zu Ihren Aufgaben gehört Folgendes:
- Wartung interner Systeme (Mikro- und mittelgroße HTTP-APIs und CLI-Dienste), die Domänendienste bereitstellen, registrieren und bereitstellen. Dazu gehört die Implementierung neuer Funktionen, die Behebung von Fehlern sowie die Umgestaltung Ihres und des Codes anderer sowie die Aktualisierung von PHP- und Bibliotheksversionen.
- Entwicklung von HTTP-API-Backends für interne Admin-Portale sowie von Backends für Kundenportale;< /li>
- Einbindung in die internen Designdiskussionen mit unserem Team;
- Teilnahme an Codeüberprüfungen;
- späteres Besprechen einiger Details mit unseren Kollegen auf Englisch;
Da wir viele Dienste haben, sind diese in einer breiten Palette von PHP-Versionen geschrieben, die von 5.6 bis 8.2 reichen. Wir verlassen uns hauptsächlich auf das Symfony-Framework für unsere Webdienste, Version 5 und Version 6, haben aber auch einige ältere Systeme, die auf dem Yii-Framework basieren.
Unsere Anforderungen (MÜSSEN):
- 3+ Jahre Erfahrung als PHP-Entwickler;
- Verständnis, wie das Internet funktioniert (insbesondere DNS);
- in der Lage sein, gültigen PHP 8.0+-Quellcode zu schreiben , formatiert gemäß PSR-12;
- Außerdem in der Lage sein, einen gültigen SQL-Code zu schreiben (für MariaDB 10.x);
- Vertrautheit mit dem Symfony-Framework (Version 5.x+ );
- die Vorbehalte älterer PHP-Versionen (7.4, 7.2, 5.6) kennen. Es wird Ihnen helfen, wenn Sie einen älteren Dienst aktualisieren, über den wir ein wenig verfügen;
- wissen, wie man den Composer-Paketmanager verwendet;
- mindestens grundlegende Erfahrung im Schreiben von Tests mit PHPUnit;
- grundlegende Git-Kenntnisse: Klonen, Ziehen, Pushen (einschließlich „Force“), Festschreiben Ihrer Arbeit und das interaktive Rebase;
- Bereitschaft, neue Kenntnisse und Code-Design-Praktiken zu erkunden;
- eine Angewohnheit, Ihren Code sauber und lesbar zu halten;
- mindestens mittleres Englischniveau
- wir testen keine Algorithmenkenntnisse (Leetcode usw.) während unserer Interviews.< /li>
Wird ein PLUS sein:
- Kenntnisse und Erfahrung in der praktischen Anwendung der PSR-Standards (wie PSR-7 und PSR-18);
- Linux-Befehlszeilenkenntnisse;
- asynchrone Kommunikationsmuster zwischen Diensten (im Gegensatz zur synchronen Kommunikation über HTTP-APIs);
- Fähigkeit, domänengesteuerte Designprinzipien wie Ubiquitous Language zu befolgen, Begrenzte Kontexte, Fähigkeit, gut mit Personen mit Branchenkenntnissen usw. zu kommunizieren;
- Fähigkeit, Entwicklungspipelines einzurichten (zu diesem Zweck verwenden wir GitLab CI);
- aktive Nutzung oder at geringste Kenntnisse der QA-Tools wie Psalm, PHP Code Sniffer usw.;
- einige Erfahrung mit dem Slim-Framework und/oder das Schreiben von HTTP-APIs von Grund auf;
- Fähigkeit, einfache Aufgaben am Frontend auszuführen Idealerweise sollten Sie über Erfahrung mit Vue.js und Webpack verfügen. Bei einigen älteren Diensten gibt es möglicherweise jQuery oder ähnliches. Aber keine Sorge, wir haben ein Frontenders dafür;
- Kenntnisse verwandter Technologien wie RabbitMQ, NATS, Redis und Docker; PHP-FPM und Nginx;
- Erfahrung in der testgetriebenen Entwicklung (wenn Sie einen Test schreiben, bevor Sie Code schreiben) und möglicherweise andere Testpraktiken wie BDD usw.;
- Verständnis Entwurfsmuster und Architekturprinzipien wie die von SOLID, Hexagonal Architecture (Ports&Adapters) oder Vertical Slice Architecture usw.;
- Open-Source-Beiträge;
Bitte geben Sie als Antwort Ihre Gehaltsvorstellungen an zur Stellenausschreibung
P.S. Der Bearbeitungszeitraum für den Lebenslauf beträgt bis zu 7 Werktage. Wenn Sie innerhalb dieser Zeit keine Antwort vom Personalvermittler erhalten haben, bedeutet das, dass wir Ihren Lebenslauf geprüft haben, aber im Moment keine offenen Stellen im Unternehmen vorhanden sind, die Ihren Erfahrungen und Wünschen entsprechen.