PHP Developer

We are Bahnhof.se, one of the biggest internet service providers in Sweden and beyond. Not only that, we provide much more to our customers: VPN, IP Telephony, Cloud services etc.
We are hiring for a new developer who will extend and enrich our team with skills and knowledge.
Your responsibilities would include:
* maintaining internal systems (micro and medium-scaled HTTP APIs and CLI services), which provide, account and provision domain services. This includes implementing new features, fixing bugs, as well as refactoring your and other's code, and upgrading PHP and libraries versions.
* developing HTTP API backends for internal admin portals, as well as backends for customer portals;
* being involved into the internal design discussions with our team;
* participating in code reviews;
* later on, discussing some details with our co-workers in English;
As we have a lot of services, they are written in a broad range of PHP versions, varying from 5.6 to 8.2. We mostly rely on Symfony framework for our web services, v5 and v6 but also have some older systems built on Yii Framework.
Our requirements (MUST have):
* 3+ years of experience as a PHP developer;
* understanding how the Internet works (especially DNS);
* being able to write valid PHP 8.0+ source code, formatted according to PSR-12;
* being able to write a valid SQL code (for MariaDB 10.x) as well;
* familiarity with the Symfony framework (version 5.x+);
* knowing caveats of older PHP versions (7.4, 7.2, 5.6). It will help you if you were to upgrade some legacy service, which we have a bit of;
* know how to use the Composer package manager;
* at least basic experience at writing tests with PHPUnit;
* basic Git skills: cloning, pulling, pushing (including --force), committing your work and the interactive rebase;
* willingness to explore new knowledge and code design practices;
* a habit of keeping your code clean and readable;
* minimum intermediate english level
* we do not test algorithms (leetcode etc) knowledge during our interviews.
Will be a PLUS:
* knowledge and experience in practical usage of the PSR standards (like PSR-7 and PSR-18);
* Linux command line skills;
* async communication patterns between services (as opposed to synchronous communication via HTTP APIs);
* ability to follow Domain-Driven Design principles like Ubiquitous Language, Bounded Contexts, ability to communicate well with people of the business knowledge etc;
* ability to set up devops pipelines (we are using GitLab CI for that purpose);
* active usage or at least knowledge of the QA tools like Psalm, PHP Code Sniffer etc;
* having some experience with Slim framework and/or writing HTTP APIs from scratch;
* ability to perform simple tasks on frontend, ideally you should have some Vue.js and Webpack experience. On some older services there may be jQuery or things like that. But don’t worry, we have frontenders for that;
* knowledge of related technologies, like RabbitMQ, NATS, Redis and Docker; PHP-FPM and Nginx;
* experience in the Test-Driven Development (when you are writing a test before writing any code) and maybe other testing practices like BDD etc.;
* understanding design patterns and architectural principles like those of SOLID, Hexagonal Architecture (Ports&Adapters) or Vertical Slice Architecture etc;
* open source contributions;

About Bahnhof AB

Bahnhof has been delivering fast, secure and affordable internet services to individuals and businesses since 1994, and is today one of Sweden’s leading internet and telecom providers with over 400,000 customers.

We offer our customers maximum security against surveillance, corporate espionage and leaks — something that is becoming increasingly important as society goes digital. With our own fibre network, we guarantee fast and reliable access to our cloud services and data centres wherever you are.

Company website:
https://www.bahnhof.se

DOU company page:
https://jobs.dou.ua/companies/bahnhof/
Job posted on 24 April 2024
75 views    26 applications

To apply for this and other jobs on Djinni login or signup.