Software Developer (Java) at Datonomy Solutions
Employer's siteDatonomy Solutions · South Africa · Full-time
Posted today
Software Developer (Java) Experience: 5+ Years Role Level: Intermediate to Senior Technology Focus: Java | Spring Boot | Micronaut | Microservices | Azure | DevOps Role Overview We are looking for an experienced Java Software Developer to join a high-performing technology team operating within a complex, high-volume enterprise environment. The successful candidate will be a hands-on software engineer with strong Java development experience and a solid understanding of modern application architecture, microservices, APIs, cloud technologies and DevOps practices. This role requires someone who can take end-to-end accountability for software deliverables, from solution design and development through testing, deployment, production support and ongoing maintenance. Key Responsibilities Design, develop and maintain high-quality Java applications and services.Take end-to-end ownership of assigned development deliverables, including development, testing, deployment and production support.Develop solutions aligned with established coding, architecture and design standards.Perform unit testing and support broader Quality Assurance and testing activities.Participate in code reviews and code-quality processes, including SonarQube reviews.Design and develop APIs, microservices and system integrations.Support deployments and automated software-release processes.Troubleshoot and resolve application, integration and performance issues.Monitor and optimise Java application performance within high-volume environments.Participate in standby, production support and application maintenance activities.Manage personal capacity and deliverables in alignment with Sprint planning and Agile delivery commitments.Provide regular progress updates to the Scrum Master, Delivery Lead and relevant project stakeholders.Work collaboratively with Product Owners, technical SMEs and other engineering teams.Produce and contribute to detailed technical and system designs. Essential Technical Skills Candidates must have strong hands-on experience across the following: Java Development 5+ years' software development experienceStrong Java development/programming backgroundObject-Oriented Design and developmentApplication architecture, design, development, implementation and deploymentAbility to work across different application tiersPerformance optimisation and troubleshooting of Java applications Frameworks Strong Practical Experience With Spring FrameworkSpring BootJPAHibernateMicronaut Expert-level Spring and/or Micronaut experience would be highly advantageous. Microservices, APIs & Integration Microservices ArchitectureSOA ArchitectureREST APIsSOAP / XML Web ServicesJSONMessage Queues / MQAPI and systems integrationIntegration security requirements and modelsJWT / JSON Web TokensSSL / secure communications Candidates should be comfortable designing and developing solutions within complex integrated enterprise environments. Database Experience Experience Working With Databases In High-volume Java Environments, Including SQLDB2NoSQL databasesCassandra and/or MongoDBDatabase integration and application data-management practices Cloud, Containers & DevOps Strong experience with modern DevOps and cloud-based software delivery is required. AzureAzure DevOpsAWS exposure advantageousDockerKubernetesContainerised application environmentsCI/CD pipelinesAutomated build, test and deployment processesSoftware release automationApplication deployment and operational support Development Tools Practical Working Experience With IntelliJ IDEA and/or EclipseGitMavenAzure DevOpsSonarQube or similar code-quality toolsNexus or similar artefact repositoriesPerformance monitoring and optimisation tools High-Volume Application Experience Candidates should have practical experience developing and supporting applications operating within high-volume, enterprise-scale environments, with exposure to areas such as: Application clusteringScalingMulti-threadingSession managementPerformance optimisationHigh availabilityProduction troubleshooting and support Agile Delivery Experience Experience Working Within Agile Software-delivery Environments, Including Exposure To ScrumKanbanSAFeSprint planningBacklog deliveryAgile ceremoniesCapacity and delivery management Stakeholder Engagement The Software Developer Will Work Closely With Scrum MastersDelivery LeadsProduct OwnersTechnical SME LeadsQA / Testing teamsOther Software Engineers and technical teams The successful candidate must therefore be comfortable communicating technical information, providing delivery updates and taking accountability for the impact of their work across multiple stakeholders. Desired Skills SoftwareDeveloperJava