Position: Software Engineer (Back-end)
Company: YourHero
Category: Python
Experience required: 1y
English level: upper

Do you have a passion about writing scalable code and delivering amazing product experiences? Are you ambitious and full of energy, and ready to start a new chapter in your career? We are looking for a talented Back-end Software Engineer to join our team on a full-time basis and assist us in disrupting one of the biggest industries out there!

Get to know us

YourHero (Douleutaras/YourPro) is the leading tech-enabled company for home services that solves the hassle of hiring a reliable professional. We launched in 2015 and since then we have helped more than 700.000 customers find the right expert for their job across 4 European countries. By leveraging technology and our unique business model we are fixing and improving it bit by bit and day by day. This is how we are serving our mission every day, creating an ecosystem of thousands of growing entrepreneurs that solve consumer problems.

We want to be the definitive services company - the app you go to every time you need a job done. Today, we possess the best KPIs in the industry, have generated more than €100m for our 5000+ professionals, possess an NPS of 70+, collected 80.000+ customer reviews, already expanded internationally and are supported by top-tier European investors.

And we’re just getting started.

The scale of the opportunity ahead of us is immense. The global services market is valued at €6 Trillion, yet less than 5% of that is online. Contrast that with the digital disruption of countless other industries - from banking and travel to retail and communications - and it’s clear that our journey in the services sector has only just begun.

In 2020 our international journey began. From 2021 onwards, we are launching new cities in new countries, every year. Join us in this incredible journey and be a major part in disrupting the €6 Trillion services market and becoming the global leader under our international brand name YourHero.


Our future goals

Our vision is to build a product that the world has never seen before, by innovating in the home services market and offering our users a truly disruptive experience. We feel that finding a home expert should not be a laborious task but should be as easy as eating a cake (yummy!). Thus we envision to build a product that fundamentally changes the way home tasks are performed. Using this product innovation we plan to rapidly expand to several countries in the next 2 years, making Douleutaras a global player in the home services industry!


How we innovate in Douleutaras

We cannot revolutionize and disrupt the home services market without first starting a revolution ourselves – internally! We are Douleutaras, we encourage autonomy, ethos, innovation and we like to move fast!

We seek our team members to have an explosive career path and a constant boost of knowledge, and we have set up specific evolution steps to make sure we achieve it – together.

Our teams are small, empowered and autonomous. We allow teams to define the methodology desired and used. From Scrum to Kanban, as well as other practices such as test-driven methodologies and pair programming, you will be the one defining it and you will be the one guiding us towards it!

Joining Douleutaras, you will find great colleagues to assist you technically and psychologically to achieve your goals! Our environment enhances knowledge, friendliness, and excellence - even if it means spending a bit more time to achieve perfection!

We build the product together! We believe our product needs input from every source, so we encourage open expression, ideation, and participation in order to achieve a great user experience. After all, we eat our own food, we are all users of Douleutaras having a first class experience of the quality of services that we offer!

Lastly, we always give back. We encourage open source contribution and provide the time to achieve it. What comes around goes around, or else, give and it will be given to you :)


Tools we use to build...

Cutting edge technology is what we use and we do not fear experimentation if this leads to product innovation or just a great tech time in the office :) Our amazing internal monitoring systems are here to protect us by providing an isolated environment on which we can go nuts! And nuts we do go!

This is an outline of our current tech:

1) Our web app is in React and Angular
2) Our Back-end is in Python running on the Django framework
3) We use Nativescript for our mobile app
4) All our applications are Dockerized
5) Our servers work on Digital Ocean and AWS
6) We like serverless technologies as we are really greedy when it comes to computing power
7) We use databases of all sorts to suit our needs: PostgreSQL, ElasticSearch, Memcached.
8) Data Science is viciously used as it makes us stand out from the crowd! Python here my friends!

If you are curious to find out more about our tech stack, send us an email. We love wasting time and talking tech!


About this role

As a Software Engineer (Back-end) you will be building core capabilities and services for Douleutaras and you must be passionate about software engineering and awesome product experiences. You should care deeply about writing solid code, you closely follow industry trends and the open source community, you are curious and an avid learner. You have a strong opinion about technologies and are willing to test new ideas out. You like to move fast and get code into production because you know that your work has a positive impact on the lives of end users.

You will also be in the driving seat for installing awesome infrastructure to assist the business geographical expansion plans which require more tech power and better delivery pipelines! Bring in some horsepower and cloud capacity please!!!

Our product’s backend is in pure Python and we strictly follow Python’s best practices and coding principles. We currently make full use of the Django framework in conjunction with Django’s REST framework and numerous Django applications.

We rely on PostgreSQL for our database needs, so you will need concrete knowledge of its optimizations and host configuration. Search is done through a cluster of ElasticSearch nodes and we constantly try to optimize search times. All our asynchronous tasks are performed through Celery.

Our deployment pipeline lives on Gitlab CI and functions with a hybrid of Ansible playbooks deploying to cloud instances and Docker containers. It is rock solid with zero downtime but there is always room for improvement.

Our Front End is a combination of Angular, React and TypeScript with a tight focus on writing optimized code for the best possible user experience. Implementation follows strict UX/UI principles communicated by our talented Design team. We use Gulp to automate tasks such as bundling and minifying, SASS/SCSS for our CSS and CoffeeScript where we have deemed necessary.

Our Front End code is deployed alongside the back-end code. It goes through a Gitlab CI pipeline later bundled in with the Python application’s code for delivery.

Our mobile application is built on NativeScript using Angular to share core codebase with Front End in the most efficient way and allows us to build native mobile apps for iOS and Android drastically speeding up development and release cycle. Native iOS and Android development tools are also used to build platform- and hardware-specific components. We also strictly follow human interface design guidelines to have the most intuitive and easy-to-use mobile application for our customers.


Have we not persuaded you yet? Some more points:
1) Your opinion will be highly appreciated and valued. We only hire creative and open-minded people who are not afraid to listen to new ideas.
2) You will never walk alone! We all belong in two teams; an agile team to develop features based on our roadmap and a tech team which makes sure we buddy in the journey of code excellence
3) You will deliver high quality scalable and well-tested code by following our comprehensive coding standards and follow our coding principles.
4) You will define our infrastructure and the tools we use! As a technology company, we constantly seek to upgrade our tools. Bring in your ideas!

Ready to create a disruptive service and blast through with amazing tech? Then this might be the right job for you!


About you

1) You communicate with candor and directness and you welcome feedback without getting defensive
2) You go out of your way for your team players and do not throw the ball over the fence.
3) You project passion, positive energy and enthusiasm in whatever you do and you always champion a “can do better” mentality
4) You think in a “scalable” way and are proud of the code you produce. 5) Admittedly, nothing is perfect and so refactoring is your friend. You always like to leave the code better than you found it, in fact, it’s how you code every day
5) You act like an owner and are selfless while being accountable and goal-oriented

Responsibilities

1) Participate in the agile feature/product design process working with cross-functional teams including: Product Management, Design and Operations
2) Collaborate with other engineers to share best practices and knowledge of emerging technologies
3) Implement features, products, and enhancements that improve the user experience
4) Maintain and monitor our CI/CD pipeline
5) Design, build and maintain core infrastructure pieces that allow Douleutaras to scale and support thousands of concurrent users
6) Plan the growth of our infrastructure
7) Improve the deployment process to make it as boring as possible
8) Monitor the application’s stability and analyze performance metrics
9) Deliver fully tested and documented code

Requirements

Ideally you will have
1) 1+ year of proven experience in developing web applications with Python
2) 2+ years of professional experience with enterprise architecture and developing highly scalable websites/services
3) Strong Understanding of OOP principles/design patterns
4) Proven REST services experience
5) Source control systems experience (Git)
6) Experience in relational databases
7) Proficient with Linux administration
8) Hands-on experience developing, releasing, and maintaining large-scale software applications
9) Good written, verbal, and collaboration skills
10) Excellent command of English, both written and verbal
11) Experience working with a remote and multicultural team

And you will also

1) Be a self-starter with a strong work ethic and a passion for problem-solving
2) Be flexible and able to adapt to changing priorities and technologies
3) Think analytically and methodically with attention to detail
4) Refactor problematic, incomplete parts and constantly improve our codebase
5) Read, understand & debug code
6) Follow coding standards and apply good practices
7) Deliver testable, efficient, reusable, high quality and easy-to-read code

Bonus Points (if you have the below just pass by our office :) )

1) Golang, JS experience
2) Experience with Pyramid/Flask/Tornado or another Python framework
3) Experience in working with Agile Methodologies
4) Experience in a peak performance organization, preferably a tech startup

Projects you could work on:

1) Building the back-end infrastructure and API for our Mobile Applications
2) Improving the communication flow between the consumer and the home experts
3) Building organizational and scheduling features for our home experts
4) Improving our CI/CD pipelines
5) Moving our infrastructure from Digitalocean to AWS
6) Architecting our infrastructure to have the capacity for a global expansion
7) Installing monitoring and alert services

Benefits

Our core belief and reason for existence is the care and attention we show our users, our community, and our employees.

1) A transparent and motivating environment where you can thrive
2) Impact the lives of millions of customers and of the professionals, we partner with
3) Being a part of an international team of domain experts in all functions
4) Competitive compensation and potential for stock options
5) Group Health Insurance program
6) Workstation of your choice
7) An annual budget for Douleutaras/YourHero/YourPro services
8) A bespoke development plan that will allow you to utilise your potential and grow quickly
9) The pleasure of being part of a high-performance team that works hard but has plenty of fun in the process