Mid-Level Software Engineer (Java)
New
J
JobgetherFinancial technology
Based in BrazilFull-TimeMiddle
Salary not disclosed
Apply NowOpens the employer's application page
Job Details
- Required Skills
- PostgreSQLSQLGitJavaJUNITMySQLOracleSCRUMCI/CD
Requirements
- Have professional experience in software development and solid knowledge of Java and object-oriented programming principles.
- Have experience working with relational databases and writing SQL queries; Oracle, MySQL, or PostgreSQL experience is preferred.
- Know continuous integration and continuous delivery tools such as Jenkins, GoCD, or equivalent platforms.
- Have practical experience with distributed version control systems, particularly Git.
- Have experience with agile software development methodologies such as Scrum or Kanban.
- Understand software design patterns, clean code principles, and maintainable software architecture.
- Have experience implementing automated tests with frameworks and libraries such as JUnit and Mockito, including unit and integration tests.
- Have knowledge of AI in software development, including AI-assisted coding tools or techniques.
- Be able to analyze technical and business requirements and translate them into reliable, scalable software solutions.
- Be able to debug code, investigate issues, and make sound technical decisions.
- Be able to manage medium-complexity tasks independently while collaborating with stakeholders and multidisciplinary technical teams.
- Familiarity with Python is desirable.
Responsibilities
- Design, develop, and maintain scalable, resilient, highly available, high-performance software applications using Java.
- Gather, analyze, and translate business and technical requirements into software solutions.
- Produce and maintain technical and non-technical documentation, including system diagrams, architecture designs, and workflow documentation.
- Manage medium-complexity development tasks from discussions with business stakeholders through technical implementation.
- Investigate, debug, and troubleshoot software issues, identify root causes, and implement solutions.
- Evaluate and define software and system architectures, contributing to technical decisions.
- Identify opportunities to improve existing systems, productivity, stability, scalability, and operational control.
- Develop and maintain RESTful APIs and other application interfaces for integrations and business requirements.
- Design, implement, and maintain unit and integration tests.
- Apply engineering best practices, design patterns, version control, CI/CD, and AI-assisted development techniques.
View Full Description & ApplyYou'll be redirected to the employer's site