Software Engineer Level 2As a Software Engineer Level 2 at Independent Software, you will develop, maintain, and enhance complex software systems supporting mission-critical operations. You will work both independently and as part of a team to design, implement, and test solutions that support large-scale data processing, system integration, and performance-driven environments. In this role, you will take on increased responsibility in system design, technical decision-making, and team collaboration.
You may lead development efforts, contribute to architectural discussions, and help guide junior engineers while ensuring high-quality software delivery.Key Responsibilities:Analyze user requirements and translate them into software design and performance solutionsDesign, develop, test, and maintain complex software applications and componentsDebug software and resolve defects across development and production environmentsModify existing software to improve performance, scalability, and functionalityIntegrate software into new or existing systems and environmentsDesign and implement database queries and data interfacesContribute to system architecture and design decisions, including trade-offs and reuseLead or support development efforts within Agile teamsDevelop and execute test procedures and support system validation activitiesAnalyze system performance and recommend improvementsCreate and maintain technical documentationCollaborate with system engineers, hardware engineers, and other stakeholdersRequired Skills and Qualifications:Strong experience with one or more programming languages (Java, Python, C, or C++)Experience designing, developing, testing, and debugging complex software systemsExperience with software development lifecycle (SDLC) and Agile methodologiesExperience working with databases and writing complex queries (SQL or similar)Understanding of system architecture, integration, and performance optimizationAbility to work independently and contribute to team leadership when neededStrong analytical, problem-solving, and communication skillsPreferred Skills:Experience with Java frameworks (Spring, Hibernate)Experience with CI/CD pipelines and automated testing tools (e.g., Jenkins, GitLab CI, SonarQube)Experience with containerization technologies (Docker, Kubernetes, OpenShift)Experience with microservices architectureExperience with monitoring tools (Kibana, Grafana, Nagios)Scripting experience (Python, Bash, or Shell)Education and Experience:Bachelor's degree in Computer Science or a related technical discipline from an accredited college or university is requiredOR Fourteen (14) years of Software Engineering experienceOR Four (4) additional years of Software Engineering experience may be substituted for a degreeClearance Requirement:Must possess an active TS SCI with appropriate Polygraph to be considered for this roleWhy Choose Independent Software: At Independent Software, our people are the mission. We've built a company around collaboration, integrity, and innovation and we make sure our team has the tools and support to grow, succeed, and thrive. When you join us, you will:Support critical national security missions that matterBe part of a close-knit, employee-first culture where your voice is heardExpand your skills through ongoing training, mentorship, and career developmentEnjoy competitive compensation, generous benefits, and work-life balanceReady to take the next step in your career?
Join us and be part of something bigger. Apply today. We're an equal opportunity employer.
All applicants will be considered for employment without attention to race, color, religion, sex, sexual orientation, gender identity, national origin, veteran or disability status.