Engenheiro de Software Pl. (Java)
This position is listed on behalf of a partner company, which manages all applications and next steps. Our partner is looking for an Engenheiro de Software Pl. (Java) based in Brazil.
As a Mid-Level Java Software Engineer, you will contribute to the design, development, and continuous improvement of scalable software solutions within a modern financial technology environment. You will help architect distributed systems and microservices that support reliable, secure, and high-performance digital products. Working closely with multidisciplinary engineering, security, and business teams, you will translate complex requirements into efficient technical solutions. You will promote automation, observability, and best practices throughout the software development lifecycle. The role offers opportunities to explore new technologies, improve system architecture, and contribute to technical decisions that generate measurable business value. Join a collaborative, innovation-driven environment where engineering excellence, continuous learning, and inclusive teamwork are central to success.
Accountabilities:
- Evaluate, discuss, and define software architecture, identifying opportunities to improve system design, scalability, reliability, and maintainability.
- Translate business requirements into technical architectures and software solutions aligned with organizational objectives.
- Design, develop, and maintain microservices-based platforms and distributed systems using Java and related technologies.
- Develop high-quality, efficient, and maintainable code to solve technical challenges and deliver meaningful business value.
- Increase automation across software solutions and development workflows to improve productivity, consistency, and operational reliability.
- Research, evaluate, and support the implementation of new technologies, frameworks, and engineering practices.
- Collaborate with cross-functional teams to ensure seamless integration between systems, services, and development tools.
- Work closely with security teams to strengthen platform security, reliability, and compliance with relevant standards and practices.
- Develop tools and implement strategies to promote efficient resource utilization and optimize system performance.
- Contribute to improvements in engineering workflows, development processes, code quality, and technical collaboration.
- Apply appropriate testing, debugging, refactoring, monitoring, and observability practices to maintain reliable software throughout its lifecycle.
- Build and maintain a comprehensive understanding of system architecture, service dependencies, and integrations to support effective technical decisions.
- Share technical knowledge, support team development, and contribute to continuous improvement across engineering initiatives.
Requirements:
- Bachelor's degree in Information Technology, Computer Science, Software Engineering, or a related field.
- Professional experience in software development using Java, with a solid understanding of distributed systems architecture.
- Experience contributing to technical team development, providing technical guidance, or supporting engineering best practices.
- Familiarity with Unix and Linux environments for software development, troubleshooting, and system operations.
- Strong understanding of data structures, algorithms, computational complexity, and problem-solving techniques.
- Knowledge of concurrent programming, multithreading concepts, and effective debugging techniques.
- Proficiency in object-oriented programming principles and familiarity with common software design patterns.
- Experience with asynchronous messaging technologies such as Kafka, RabbitMQ, JMS, Amazon SQS, or Amazon SNS.
- Experience developing microservices and working with DevOps practices and Docker-based environments.
- Practical experience with relational and non-relational databases, including SQL and NoSQL technologies.
- Experience with the Spring ecosystem, including Spring Core, Spring Boot, Spring Cloud, and Spring Data.
- Familiarity with software testing tools and best practices for ensuring code quality, application performance, and system reliability.
- Knowledge of CI/CD pipelines and development platform tools, such as Jenkins.
- Experience with code refactoring, observability tools, system monitoring, and performance analysis.
- Understanding of software security principles, practices, and tools for building reliable applications.
- Technical English proficiency sufficient to understand documentation and communicate about technical concepts.
- Strong analytical thinking, attention to detail, and a proactive approach to identifying and resolving technical challenges.
- Ability to collaborate effectively with multidisciplinary teams, communicate technical decisions clearly, and contribute to shared goals.
- Nice to have: Experience working with agile methodologies and familiarity with Amazon Web Services (AWS).
Benefits:
- 100% remote work within Brazil.
- Full-time employment.
- Meal and/or food allowance.
- Health insurance.
- Dental insurance.
- Life insurance.
- Access to TotalPass for fitness and wellness activities.
- Access to ZenKlub for mental health and emotional well-being support.
- Extended maternity and paternity leave.
- Childcare assistance.
- Discounts of up to 50% on postgraduate programs and MBAs at selected institutions, including FIA, FAAP, and PUCRS.
- Flexible dress code, allowing you to work comfortably.
- Birthday day off to celebrate your special day.
- Baby Gift, a welcome gift for newborns.
- Opportunities to contribute to innovative financial technology solutions and develop your technical expertise in a collaborative environment.
- An inclusive workplace that values diversity, teamwork, professional growth, and continuous learning.