Why should you join dLocal?
dLocal enables the biggest companies in the world to collect payments in 40 countries in emerging markets. Global brands rely on us to increase conversion rates and simplify payment expansion effortlessly. As both a payments processor and a merchant of record where we operate, we make it possible for our merchants to make inroads into the world’s fastest-growing, emerging markets.
By joining us you will be a part of an amazing global team that makes it all happen. Being a part of dLocal means working with 1000+ teammates from 30+ different nationalities and developing an international career that impacts millions of people’s daily lives. We are builders, we never run from a challenge, we are customer-centric, and if this sounds like you, we know you will thrive in our team.
What’s the opportunity?
We are looking for a thoughtful, experienced Senior Software Engineer to join our engineering team. The ideal candidate will join a team that takes full responsibility for implementing new features, improving performance, and building robust solutions for our payments products and more!
What will I be doing?
Collaborate with technology leaders and the product team to understand department goals and requirements, translating them into technical solutions.
Design, develop, and maintain high-quality Java applications and systems aligned with business objectives.
Lead the technical architecture and design of Java-based projects, ensuring scalability, performance, and maintainability.
Create scalable architecture systems for Java-based applications, considering future growth and evolving business needs.
Optimize application performance by identifying and addressing areas for improvement, such as code optimization, database query optimization, and resource utilization.
Troubleshoot design flaws and system bottlenecks to enhance application stability and performance.
Perform validation tests to ensure the flexibility and scalability of the Java environment, making necessary adjustments as needed.
Conduct comprehensive system performance tests to identify bottlenecks, assess system capacity, and fine-tune application performance.
Generate and present detailed systems reports, including performance metrics, bottlenecks, and recommendations for improvements.
Conduct code reviews and provide constructive feedback to maintain high standards of software development, ensuring code quality, readability, and adherence to best practices.
What skills do I need?
5+ years of software development experience using Java SE
Knowledge of microservices architecture
Experience working with: Spring, Maven, Java
Knowledge of other language ecosystems, for example, Node/Express, GoLang/Gin.
Experience working with relational databases in production environments (MySQL, Aurora, PostgreSQL, Oracle), including query optimization and performance tuning.
Experience using in production with non-relational databases (redis, DynamoDB, mongoDB)
Experience with Cloud Providers such as AWS (preferred) or GCP.
Experience with CI/CD pipelines is a plus
Experience with Platform tools such as K8s, Docker, is a plus
Written and spoken English
Ability to translate user requirements into technical solutions
Ability to quickly master new technologies
Ability to work independently
Be a team player