Lead Software Engineer (Java/Azure)
Lead Software Engineer (Java/Azure) Position Summary The Lead Software Engineer provides hands-on technical leadership for a mission-critical, enterprise-scale application platform. This role partners closely with the Technical Manager to drive application development, cloud infrastructure design, and operational reliability across Azure-hosted environments. This position is highly technical and execution-focused, with 75% or more of time spent actively writing, reviewing, and maintaining application code. In addition, the Lead Software Engineer provides technical direction and oversight to senior developers, ensuring adherence to coding standards, architectural best practices, and high-quality delivery. The role requires a balance of software engineering expertise, cloud infrastructure knowledge, and development leadership, with a strong emphasis on system stability, scalability, and maintainability. Key Responsibilities Technical Leadership & Oversight Serve as the technical lead for the platform, collaborating with the Technical Manager on design decisions, architecture, and coding standards. Provide guidance, direction, and oversight to senior developers and development teams. Lead and participate in code reviews to ensure quality, security, and adherence to standards. Establish and enforce best practices across development, testing, and deployment. Partner with leadership to drive continuous improvement and modernization initiatives. Hands-On Development (Primary Responsibility) Actively contribute to the codebase, spending 75% or more of time on hands-on development. Design, develop, enhance, and maintain backend applications and APIs. Implement scalable, secure, and high-performance solutions. Identify and address technical debt, performance bottlenecks, and system inefficiencies. Ensure high-quality code through testing, validation, and review processes. Code Quality & Engineering Practices Utilize tools such as SonarQube to monitor code quality and maintainability. Promote secure coding practices and strong test coverage. Partner with developers to improve overall code health and reduce technical debt. Cloud Infrastructure & DevOps Collaborate with the Technical Manager to design and maintain Azure-hosted environments. Lead the implementation of Infrastructure as Code (IaC) using Terraform and Ansible. Support configuration and management of cloud resources, including compute, storage, and networking. Contribute to CI/CD pipeline development and optimization using Azure DevOps. Ensure environments are scalable, reliable, and aligned with enterprise security standards. Deployment & Operations Participate in release planning, deployment execution, and change management processes. Collaborate with infrastructure, security, and vendor teams on system maintenance and improvements. Maintain and enhance operational processes and system reliability. Monitoring & Reliability Support applications monitored through 24/7 monitoring tools, ensuring system health and availability. Analyze alerts, system metrics, and trends to proactively identify issues. Contribute to root cause analysis and continuous improvement efforts. Documentation & Communication Develop and maintain technical documentation, including: Application architecture and design System workflows and processes Deployment and operational procedures Communicate effectively with technical and non-technical stakeholders. Act as a trusted technical advisor to leadership and cross-functional teams. Required Qualifications Technical Skills 8+ years of experience in software engineering, with significant experience developing enterprise applications. Strong expertise in Java/J2EE and backend application development. PHP experience required, including support and enhancement of production applications. Experience developing and supporting REST APIs, JSON, and service-oriented architectures. Experience with SQL Server and MySQL, including performance tuning and data modeling. Experience supporting Azure-hosted applications in production environments. Hands-on experience with Infrastructure as Code (IaC) using Terraform and Ansible. Experience with NGINX and web server configuration. Experience working in Agile/Scrum environments. Proficiency with JIRA for Agile tracking and sprint management. Proficiency using Azure DevOps for source control, CI/CD pipelines, and deployments. Experience with SonarQube or similar code quality and static analysis tools. Leadership & Communication Strong written and verbal communication skills. Proven ability to document application design, workflows, and system architecture. Experience providing technical leadership and mentorship to development teams. Ability to balance hands-on development responsibilities with leadership expectations. Preferred Qualifications Kotlin experience, particularly within Java-based ecosystems. Experience supporting high-availability, enterprise-scale systems. Experience with application monitoring and reliability tools. Familiarity with performance tuning, caching strategies, and backend optimization. Experience leading cloud modernization or application transformation initiatives.