Software Engineer, Level 3
What You Will Do
As a Senior Software Engineer, you will be at the forefront of designing, developing, and enhancing complex software systems across various mission-critical domains, including real-time systems, large-scale data processing, algorithm development, and business management platforms. You’ll work either independently or as part of a collaborative team to translate user requirements into high-quality software, integrating COTS/GOTS components when appropriate and ensuring performance, reliability, and maintainability.
This role offers an opportunity to make a real impact by contributing to large-scale, high-stakes national security and enterprise systems. You’ll engage in challenging technical work alongside talented professionals while maintaining work-life balance and professional growth. If you are passionate about building robust software and solving complex problems, this is the role for you.
Key Responsibilities
- Analyze user requirements to derive software design and performance specifications.
- Design, develop, and modify software systems using scientific and mathematical principles.
- Debug existing software and correct defects in a timely and efficient manner.
- Design and implement complex algorithms and system performance enhancements.
- Modify existing software to correct errors or adapt to new hardware/environments.
- Integrate existing software components into new or updated systems.
- Develop and execute test procedures and document results.
- Design or implement complex database or data repository queries and interfaces.
- Create and maintain software and system documentation.
- Lead one or more software development teams, ensuring adherence to processes and quality standards.
- Coordinate installation and monitor performance to meet operational requirements.
- Collaborate with system engineers and hardware engineers to derive functional and performance requirements.
- Recommend and implement new technologies and processes to improve project outcomes.
- Delegate and monitor programming and testing assignments across multiple teams.
- Provide oversight for team-level quality assurance and process compliance.
- Select and adapt the software development methodology in coordination with customers and engineering leadership.
Required Skills and Qualifications
- Deep expertise in software engineering and design across complex systems.
- Proficiency with modern programming languages (e.g., Java, Python, C/C++, or others depending on environment).
- Strong understanding of system performance tuning, real-time systems, and algorithm development.
- Experience with hardware/software trade-off analysis and integration of COTS/GOTS tools.
- Familiarity with database development, querying, and optimization.
- Proven ability to work both independently and as a team or technical lead.
- Excellent verbal and written communication skills, especially in documenting code and test results.
Education and Experience:
- Bachelor’s degree in Computer Science or a related discipline from an accredited college or university is required.
- Twelve (12) years of experience as a Software Engineer in programs of similar scope, type, and complexity is required.
- In lieu of a degree, an additional four (4) years of software engineering experience on similar projects may be substituted.
- Must possess an active TS/SCI with Polygraph security clearance to be considered for this role.
Independent Software is an Equal Opportunity Employer EOE, M/F/D/V.