Software Engineer, Level 3
About the role
Who are we? Independent Software is a consulting, product, and solutions firm dedicated to the practical application of software and system engineering technologies to solve complex problems. We bring together world class engineers with proven engineering best practices, domain expertise, commercial technologies, and proven agile management approaches to create high value solutions aimed at helping our customers meet their most critical business and mission objectives. Why Independent Software? We are focused on continual learning and evolution. We don’t do things because “that’s the way we’ve always done things”; we listen to our employees and adapt to the changing marketplace. We look at the big picture and encourage our engineers to get training and certifications in emerging technologies that will help shape our customer’s mission. We’ve been profitable year after year. We’re always on the lookout for great engineers to join the team and we recognize that our employees are the heart and soul of what we do. We focus on recruiting talented people, treating them right, and then allowing them to do what they do best. No red tape. No micromanagement. Smart people want to work with smart people, and we love people who are passionate about what they do and finding ways to do it better. Top Reasons to Work at Independent Software: * Great people deserve even better benefits, from comprehensive healthcare coverage and generous leave time to discounts with all our vendors. * You are not just a job title. That's why we tip the work-life balance scale in your favor. It's not about being billable, it's about being valuable. * Whether you're working on-site or in our offices, your role at Independent Software is just as critical to our success as your coworker's. * We're constantly researching and implementing the latest technology, so you've always got the right tools at your disposal. * As we've grown, we've retained that small company feel. When we say we have an open-door policy, we actually mean it. * Independent Software is comprised of wonderfully generous folks. We believe in supporting the causes our employees care about. Bring us an opportunity to help and we'll listen. * Teamwork got us where we are today. Our collaborative environment allows you to maximize your true potential. * The work we do is exciting, critical stuff. No matter your role at Independent Software, you're helping us keep the nation safe and secure. * We have a history of great achievement, and, with each year, our company gets even bigger and better. As we grow, so does the opportunity for our employees. * We host a variety of fun employee and family events throughout the year to say thanks for all that you do to make Independent Software a technology leader as well as a phenomenal place to work. Benefits: * Competitive salary * Company Sponsored Health, Dental, and Vision Insurance plans * Company Paid Long Term Disability, Short Term Disability and Life Insurance * Employee Assistance Program * Your retirement plan is an important benefit you shouldn’t overlook. We offer a 401(k) Profit Sharing Plan and Trust that offers a powerful way to enhance your long-term financial well-being by investing in yourself. We offer immediate eligibility and company matching. * A generous Paid Time Off and Holiday package * Paid training! We encourage all employees to seek out training opportunities like conferences, certification courses and seminars. * We truly believe the right work-life balance can exist, and it's here at Independent Software. Our work is extremely important, but your job is just a part of who you are. When you enjoy your life outside of our walls, you're at your best the next time you walk through our doors. We do all we can to assure that happens every day. Independent Software is an Equal Opportunity Employer EOE, M/F/D/V. Software Engineer, Level 3 Annapolis Junction, MD Full Time Software Engineering Experienced Share What You Will Do: As a Software Engineer (SWE) Level 3, you will design, develop, integrate, and enhance complex and diverse software systems in support of mission-critical programs. You will work independently and as part of a collaborative engineering team to deliver high-quality software solutions, applying appropriate software development methodologies and best practices. This role includes contributing to system design decisions, resolving complex technical issues, and providing technical leadership across software development efforts. Key Responsibilities:
Analyze user requirements to derive software design and performance requirements
Design, develop, and modify software systems to add new features, improve performance, or adapt to new hardware
Debug existing software, identify root causes, and correct defects
Develop and implement algorithms that meet strict performance, timing, and functional constraints
Integrate existing software into new or modified systems or operating environments
Design and implement complex database or data repository interfaces and queries
Develop simple data queries for existing or proposed databases or data repositories
Assist with developing and executing test procedures for software components
Review, test, and validate software components for adherence to design requirements
Write, review, and maintain software and system documentation
Provide recommendations and implement improvements to software development processes and documentation standards
Perform quality control on team deliverables to ensure compliance with project standards
Serve as a technical lead or team lead, as appropriate to the software development process
Delegate programming and testing tasks and monitor team performance
Oversee one or more software development teams to ensure work is completed within process constraints
Confer with system engineers and hardware engineers to derive software requirements and understand system limitations
Coordinate software system installation and monitor system performance to ensure operational specifications are met
Recommend new technologies, tools, and processes for complex software projectsRequired Skills and Qualifications:
Strong experience with object-oriented programming languages such as C++ and Java
Experience developing software for complex systems, including processing-intensive applications, real-time systems, or large data environments
Proficiency in applying software development methodologies appropriate to the development environment
Experience with requirements analysis, software design, implementation, testing, and integration
Ability to design and implement complex algorithms using scientific analysis and mathematical models
Experience supporting Information Assurance or secure software development environments
Strong problem-solving, analytical, and debugging skills
Ability to work independently and lead technical efforts across multiple teams
Strong written and verbal communication skills for documentation and technical collaboration
Education And Experience
Bachelor’s degree in Computer Science or a related discipline from an accredited college or university
Four (4) additional years of software engineering experience on projects with similar software processes may be substituted for a bachelor’s degree
Minimum of fourteen (14) years of experience as a Software Engineer on programs and contracts of similar scope, type, and complexity
Additional experience with object-oriented programming languages such as C++ and Java is required
Clearance 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 matter
Be part of a close-knit, employee-first culture where your voice is heard
Expand your skills through ongoing training, mentorship, and career development
Enjoy competitive compensation, generous benefits, and work-life balance Ready 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. Share Apply
Responsibilities
- Analyze user requirements to derive software design and performance requirements
- Design, develop, and modify software systems to add new features, improve performance, or adapt to new hardware
- Debug existing software, identify root causes, and correct defects
- Develop and implement algorithms that meet strict performance, timing, and functional constraints
- Integrate existing software into new or modified systems or operating environments
- Design and implement complex database or data repository interfaces and queries
- Assist with developing and executing test procedures for software components
- Review, test, and validate software components for adherence to design requirements
Qualifications
- Strong experience with object-oriented programming languages such as C++ and Java
- Experience developing software for complex systems, including processing-intensive applications, real-time systems, or large data environments
- Proficiency in applying software development methodologies appropriate to the development environment
- Experience with requirements analysis, software design, implementation, testing, and integration
- Ability to design and implement complex algorithms using scientific analysis and mathematical models
- Experience supporting Information Assurance or secure software development environments
- Strong problem-solving, analytical, and debugging skills
- Strong written and verbal communication skills for documentation and technical collaboration
Benefits
- Competitive salary
- Company Sponsored Health, Dental, and Vision Insurance plans
- Company Paid Long Term Disability, Short Term Disability and Life Insurance
- Employee Assistance Program
- 401(k) Profit Sharing Plan with company matching
- Generous Paid Time Off and Holiday package
- Paid training opportunities
- Work-life balance initiatives
Skills mentioned
About Independent Software
Entrepreneurs who are serious about giving their idea the best chance of success turn to Independent Software. Our product development and acceleration services allow startups to build a solid foundation during the early, risky phase of company formation. Through our A100 Software Developer Apprenticeship Program, we develop emerging local talent and connect these A100 Certified Developers with growing, innovative Partner Companies building their teams. Our A100 for Entrepreneurs program provides a revolutionary product development platform to early stage companies looking to reduce risk and maximize the return on their development budget. Venture Partner Companies accelerate their product and their team through a managed service that provides them with Apprentice teams and expert guidance on topics like Customer Development and Agile. Collaboration is at the heart of everything we do. During the software development process, we take an idea from blank page to beta. Clients become a part of our team even as they maintain control and ownership of what we build together. Working with us is also a gateway to other resources like startup founders, supporters, mentors, investors, and talent.