We are Docplanner Phone, a new product that is currently finding its way into the healthcare market.
You can catch a glimpse of it here. We benefit both from being an established company as well as acting as an independent startup. We’re looking for an experienced software engineer, preferably with a solid PHP/Symfony background.
Why would you like to join us?
-
People: our team right now is about a dozen people — not only software engineers, but the whole team responsible for the product development. We all wear many hats, and we all literally have a say in the final product. If you like working in an early-stage environment, this is something for you
-
Product: we’re building a middleman for an internet telephony system, so not yet another CRUD app. We might not be blockchain-based, but we operate at the junction of telecommunications, user experience, and marketing. We found our initial market fit and we’re now in the growth phase with hundreds of clients across 5 markets
-
Technology: we have a lot of freedom and we use it to manage the technical debt level. This means phpunit tests, behat tests, phpstan level 8, code sniffer, deptrac and more. While there are some areas we’d like to pay closer attention to and refactor continuously, there is no obvious legacy code (the whole codebase has about 18 months)
Our tech stack
- We’re working with Symfony 4.4 / PHP 7.4 using FOSRestBundle and API Platform (for CRUD mostly). A small backoffice is made using EasyAdmin.
- We use some of the following services and more: MySQL, ElasticSearch, RabbitMQ, Redis, Pusher (websockets), Twilio, Github & GH Actions, NewRelic, Sentry.
- The backend is about 60k LOC with about 300 unit tests on top of that — not that much, there’s much to be done!
- We’re following some DDD, but we’re not fanatical about it
- We benefit from continuous delivery — we deploy as soon as the code review is complete, and it’s all automated of course.
Some of our short-term technical challenges
- We’d like to logically split up our monolithic codebase into bounded contexts. We’ve started domain storytelling workshops to help us identify those boundaries.
- We’re planning to migrate our (simple) search engine to ElasticSearch
Our ideal candidate
- Worked in a small team before, so they understand that nobody will do the job for them. They will need to take initiative, make decisions, and implement them. They won’t be just a „small cog in a large machinery”.
- They have experience with Javascript frameworks (we use Vue). This will make them more versatile, and it’s very beneficial to our small team. They don’t need to go full-stack if they don’t want to.
Our requirements
- You have a solid understanding of Object Oriented Programming principles, and good knowledge of PHP (or willing to learn)
- You’re familiar with Domain Driven Design. We prefer Vernon over Evans
This role’s responsibilities
- You will be a part of the product team working in Scrum to deliver value to our customers (so no complaining on the „product people”, we’re a team)
- Your main focus will be backend development (you will have the opportunity to work with others on topics in your area of interest)
- We expect you to bring in some innovative ideas to the team — you will not always be told what to do next
Some of our perks
- We are a startup and a part of a large, mature company. You can experience our agile working culture, and at the same time benefit from all of the initiatives and people DP Tech brings to the table (meetups, workshops, tech areas, hackathons, and stuff)
- You make your own hours, and nobody asks you about it. As long as you’re contributing to the team, you can pick up your kid from daycare, make errands, or work until 2am
- We leave a lot of autonomy to you. You can experiment and fail. We’d rather have you ask for forgiveness than for permission
- The office is open for all, but we decided to have all-hands meetings only on Fridays, and we’re not very strict about it. It’s up to you how you want to work
What happens when you apply
- We interview you remotely. You’ll meet with someone from the engineering team and from the People Experience team at this step. It will take about an hour. No coding, no hard questions. Unless you ask some.
- During the second phase we’d like you to show your technical skills. Usually it’s a take-home assignment, but we can schedule a pair programming session, or you can just show us some code samples from your previous projects.
- We conclude the process during a second meeting where you’ll have the chance to know the team and learn how our typical day goes by. We really want to get to know you better and show you our reality. Learn more here: Why I don’t believe in a “classic” recruitment approach
You always get detailed feedback from us, and you’ll hear about the final decision within a few days.
You will get in return
💶 Up to 19k net B2B in compensation
⚕️ Private health plan
✌ 26 free paid days
🎉 Additional paid holiday on your birthday/work-anniversary to celebrate with your loved ones or to have a self-care day!
📈
Share options plan after 6 months working with us
✈️ Relocation package (from a different city or country)
🇬🇧 Free English classes