GDIT is looking for a Principal Software Developer to deliver new features and improve the reliability of their core services, addressing system bottlenecks and flaws in business logic to solve complex user problems.
Requirements
- Proficient in Python/Java or similar language
- Expert in majority of language constructs, able to apply them fluently to solve complicated and complex problems
- Experience with performance tuning
- Minimum of 10+ years of programming with at least one software programming language experience (Java and/or Python)
- Minimum of 10+ years of leading design or architecture (design patterns, reliability, and scaling) of new and existing systems experience
- Must have experience designing a non-trivial distributed system (multi-tier) - storage layers, caching layers, application layers, understanding of failure modes, expertise with applying a strangler-pattern to transform a system from a monolith to a microservice architecture
- Must have Microservice Architecture experience, especially with high throughput and low-latency systems
Responsibilities
- Deliver new features and improve reliability of our core services including the major read/write paths for customer intake, application screening, and information dissemination
- Identify major system bottlenecks, or flaws in business logic, and proactively address them
- Take ownership over core product problems, be able to come up with your own solutions that you love and prove through data that it is impactful at scale
- Work across the stack to solve problems, there is no reliance on another engineer or team to get something done for you
- Lead a team of Developers to engineer and develop software to solve complex user problems.
- designing a non-trivial distributed system (multi-tier) - storage layers, caching layers, application layers, understanding of failure modes, expertise with applying a strangler-pattern to transform a system from a monolith to a microservice architecture
- working with complex systems migration involving multiple phases with dark reads, dark writes, light reads, light writes
Other
- Minimum of 10+ years of non-internship professional software development experience
- Experience as a mentor, tech lead or leading an engineering team
- Must be a US Citizen and able to obtain and maintain Public Trust 6C
- Positions are remote, but some travel to DC, approx. 10-25%
- Work in a fast paced, collaborative environment where ideas are discussed and challenged openly