Java Developer
Posted: 2 days ago
Job Description
12 months contrcat Onsite roleSenior Software EngineerWe are looking for a hands-on Senior Software Engineer who loves building high-quality software using modern engineering practices. You will design, build, test, and continuously deliver software changes using Java stack (with Java modernization opportunities). You lead through craft, example, mentorship, and raising the engineering bar.ResponsibilitiesDesign APIs and message contracts (REST/gRPC/event) with clear versioning and backward compatibility.Write clean, maintainable, refactor-friendly codeApply secure coding and performance-aware patterns early (avoid premature complexity).Contribute to modernization of existing Java services (improving modularity, testability, performance, observability) while avoiding risky rewrites.Build and evolve Azure-hosted services (Functions, AKS, App Service, Event-driven components, storage, data pipelines).Practice test-first / TDD for business logic; use property-based and contract tests where valuable.Help the team adopt Continuous Integration (single trunk/main, small frequent commits, fast green builds).Automate deployments (Continuous Delivery) with Azure DevOps pipelines and Infrastructure as Code (Bicep/Terraform).Strengthen the testing pyramid: fast unit tests, service/component tests, selective integration/system tests.Embed observability (structured logging, metrics, tracing) from the start.Use regulated-app test gates: security scanning (SAST/DAST), dependency vulnerability checks, data masking tests, audit logging verification.Treat non-functional tests (performance, resilience) as part of definition of done where risk-impact warrants.Minimise manual handoffs; optimise flow from idea to production.AI Augmentation & Enablement Use AI tools (e.g. GitHub Copilot, Azure OpenAI) to accelerate coding, test generation, documentation drafts - with critical review.Curate effective prompts and patterns; avoid leaking secrets or sensitive data.Teach teammates how to use AI responsibly to improve speed AND quality.Identify where AI adds leverage (e.g. scaffolding code, generating edge-case tests) vs where human design thinking is essential.Experience And Qualifications6+ years professional software engineering building production systems.Strong in Java and comfortable to assist with C#/.NETSolid SQL skills and working with an ORMExperience working with legacy systemsProven application of TDD / automated testing (can explain strategy trade-offs and test design)Hands-on CI/CD experience (Azure DevOps or similar) with Infrastructure as Code (Bicep or Terraform).Practical experience using AI coding tools (e.g. Copilot) and integrating them into daily flow.Strong Azure fundamentals (Functions, containerization, messaging, storage, identity, pipelines).Clear, concise technical communication (written & verbal).Experience delivering in regulated or high-governance environments (e.g. financial risk, Basel/BCBS, audit constraints) with demonstrated test & evidence practices.Ability to identify and execute safe modernization strategies (strangler patterns, incremental refactors) rather than large rewrites.Nice to Have Azure Developer (AZ-204) certification.Experience in risk, finance, or regulated environments (Basel/BCBS concepts).Event-driven architecture patterns (Kafka/Event Hubs/Service Bus).Observability tooling (OpenTelemetry, Azure Monitor, Application Insights).Property-based testing / contract testing / performance profiling.
Job Application Tips
- Tailor your resume to highlight relevant experience for this position
- Write a compelling cover letter that addresses the specific requirements
- Research the company culture and values before applying
- Prepare examples of your work that demonstrate your skills
- Follow up on your application after a reasonable time period