At Spotahome we love creating Product and developing Technology to be
closer to our users and provide the best Experience possible. We are
looking for an skilled developer with strong technical understanding and
entrepreneurial mindset who loves solving new and challenging problems.
The ideal developer is used to owning his work and diving across the
different parts of a software solution in order to delight his
customers.
Our product is built on a distributed platform composed of several
microservices, that applies hexagonal architecture and domain driven
design principles, among others. Our backend layer is mainly developed
using modern PHP7.2 and our frontend layer uses NodeJS, GraphQL and
React. Our technological stack also includes services in Python and
Scala. All our platform is orchestrated using Kubernetes and we apply
Continuous Integration and Continuous Delivery to ship code fast to
Production several times a day while having all the operations under
control.
You should be able to work on medium-size distributed web platforms
with microservices and different technologies, moving easily between
backend and frontend to create and improve a complete user experience
affecting the full lifecycle of the product you are working on. You must
be able to communicate technical ideas and move seamlessly from backend
to frontend combining different technologies in an agile environment.
At Spotahome we know that Open Source is key, and have open sourced
some projects and more are in the pipeline to be shared with the
community in the future.
Position
Main responsibilities
- Be a problem solver, and able to design and implement end to end
software solutions to help our users have a seamless experience when
searching for new homes and booking the place they love.
- Write reusable and testable code and participate in code reviews.
- Develop and maintain great software with emphasis on reliability and quality.
- Maintain up-to-date knowledge of technology standards, industry
trends, emerging technologies, and software development best practices.
- Help to hire more engineers.
- Learn fast and teach other engineers.
Requirements
Main requirements
- BS in Computer Science, Computer or Electrical Engineering, Mathematics, or equivalent tech/science fields.
- Solid knowledge of Computer Science fundamentals (object-oriented design, data structures and algorithm design).
- Deep understanding and real experience in object-oriented programming.
- Relevant work experience in at least one language such as PHP, Java, Python, Scala and NodeJS.
- Work experience in modern distributed web platforms.
- Excellent communication and analytical skills.
- 5+ years relevant work experience in software development.
Extra points
- Experience in fast-paced startups.
- Experience with modern engineering operations and best practices
including version control, coding standards, code reviews, testing,
continuous integration and continuous delivery.
- Experience taking a leading role in building complex software systems directly exposed to customers on web and mobile platforms.
- Strong systems engineering and experience working with distributed
and enterprise-wide systems, including AWS and Docker/K8s ecosystem.
- Understanding of SOLID principles and software architectural patterns.
- Excellence communication skills, proven ability to express technical
ideas to colleagues, technical teams and senior management to collect
product requirements, describe software product features, technical
designs, and product strategy.
- Experience mentoring junior software engineers to improve their skills, and make them more effective software engineers.
- Ability to influence other software engineers about best practices.
- Be mission-driven, and focus always on the end user.
- Participate in open source projects.
Other information
Benefits
- Competitive compensation package
- Company happy Fridays & social events.
- Company sponsored tech talks (technology and other relevant professional topics)
- People: Work with talented, committed and supportive teammates
- Equity and performance bonuses.
- International environment more that 25 nationalities
- Budget for training, certifications and teambuilding activities
- Flexible work hours
- Fitness benefits: Gympass
- Excellent Medical insurance. Co-payment.