Senior / SME Software Developer - Java / Python
Technology
Job Description
Job DescriptionJob Summary
The Senior / SME Software Developer will provide technical leadership, architectural guidance, and hands-on software engineering for complex system modernization and data transformation initiatives. The role focuses on designing and developing scalable backend applications, microservices, APIs, and data processing pipelines using Java and/or Python.
Key Responsibilities
- Architect, design, develop, test, and maintain scalable software applications and microservices.
- Provide technical leadership and subject matter expertise in software architecture and engineering practices.
- Design and implement RESTful APIs, event-driven architectures, and system integrations.
- Develop and optimize data storage, ingestion, transformation, and processing pipelines.
- Work with relational and NoSQL databases, including data modeling and query optimization.
- Design cloud-native solutions using AWS or Azure, Docker, and Kubernetes.
- Apply security, zero-trust, high-availability, and performance engineering practices.
- Establish software development and engineering best practices.
- Participate in code reviews and automated testing.
- Mentor developers and lead technical design sessions.
- Collaborate with stakeholders to translate technical and operational requirements into solutions.
- Support Agile/Scrum development and continuous improvement.
Required Qualifications
- 7+ years of professional software engineering experience for Senior-level positions.
- 10+ years of progressive software engineering and architectural leadership experience for SME-level positions.
- Bachelor's degree in Computer Science, Engineering, or a related field, or equivalent experience.
- Strong production experience with Java and/or Python.
- Experience with Spring Boot, FastAPI, Flask, or similar frameworks.
- Strong knowledge of microservices architecture and enterprise APIs.
- Advanced experience with SQL, relational databases, and NoSQL databases.
- Experience with AWS or Azure cloud environments.
- Experience with Docker and Kubernetes.
- Strong understanding of CI/CD, automated testing, and secure coding practices.
- Experience working in Agile/Scrum environments.
- Active TS/SCI with CI Polygraph clearance.
- Experience with ETL/ELT, distributed computing, Spark, Kafka, AWS Glue, or EMR is preferred.
