Software Engineer
Backend Developer
.NET
APIs
C Sharp
C/c++
CI/CD
Data Analysis
Data Processing
Database
Databases
Design
Developer
DevOps
Devops Tools
DevSecOps
Engineering
Frontend
Information Technology (IT)
Integration
Java Language
Programming
Programming Language
Programming Languages
Software Developer
Software Development
Software Engineer
Software Engineering
Software Testing
SQL
Web Design
Job Description
DTC Global Services LLC offers a hybrid software engineering role based in Tysons Corner, VA 22102, with an estimated salary range of $95,000 to $115,000 per year. In this position, you will design and build software capabilities that support customer, business, and mission requirements across the full development lifecycle.
What you’ll do
- Design, develop, code, test, debug, document, implement, and maintain software applications, components, interfaces, and supporting systems.
- Develop and modify software procedures and applications to address technical and business needs, accounting for system capabilities, constraints, and performance targets.
- Analyze business, functional, and technical requirements and translate them into effective software solutions.
- Work through all phases of the software lifecycle, including requirements analysis, design, development, testing, integration, deployment, maintenance, and enhancement.
- Produce clean, efficient, maintainable, secure, and well-documented source code following established standards and best practices.
- Create and maintain technical artifacts such as design documentation, specifications, process flows, diagrams, and test documentation.
- Develop and maintain application interfaces including APIs, web services, and system integrations.
- Build and run unit tests and support integration, system, regression, and user acceptance testing activities.
- Troubleshoot and resolve issues involving defects, application errors, performance, and integration problems, including root-cause analysis and incident support.
- Recommend improvements by analyzing existing applications and supporting modernization and enhancement of software applications and systems.
- Participate in code reviews and other technical reviews to improve quality, security, performance, maintainability, and reliability.
- Implement software changes and releases using configuration management and change management processes, and manage code baselines with source/version control tools.
- Support deployments and software releases across development, testing, staging, training, disaster recovery, and production environments, as applicable.
- Support automated build, test, deployment, and CI/CD processes where applicable.
- Develop and maintain database queries, stored procedures, and data access components as required.
- Apply secure software development practices and support remediation of vulnerabilities identified through security reviews, testing, scanning, or other assessment activities.
- Monitor and evaluate application performance and recommend improvements for reliability, scalability, usability, and efficiency.
- Provide technical support and troubleshooting for software components in development and production environments.
- Estimate effort, complexity, dependencies, and timelines for assigned tasks and enhancements.
- Participate in Agile/Scrum and/or DevSecOps or other established development methodologies as applicable.
- Communicate technical concepts, risks, issues, and recommendations to technical and non-technical stakeholders.
- Maintain current knowledge of software development technologies, programming languages, frameworks, security practices, and industry best practices.
- Perform additional duties as assigned based on contract requirements.
What you’ll bring
- Knowledge of software engineering principles, methodologies, design patterns, and software development lifecycle practices.
- Demonstrated ability to design, code, develop, test, debug, document, and maintain software applications.
- Proficiency with one or more programming languages: Java, C#, C/C++, Python, JavaScript, or comparable technologies.
- Experience with software development frameworks, libraries, development tools, and integrated development environments appropriate to assigned applications.
- Experience developing and/or integrating APIs, web services, or application interfaces.
- Working knowledge of relational databases, SQL, data structures, and application/database integration.
- Experience with source/version control such as Git or comparable technologies.
- Knowledge of testing practices including unit, integration, regression, and system testing.
- Understanding of secure software development principles and practices.
- Ability to analyze functional and technical requirements and translate them into software solutions.
- Ability to troubleshoot software/application issues and perform root-cause analysis.
- Strong analytical, critical-thinking, and problem-solving skills, with excellent organizational skills and attention to detail.
- Excellent verbal and written communication skills, including the ability to create and maintain clear technical documentation.
- Ability to work independently and as part of a multidisciplinary technical team.
- Ability to manage multiple assignments and priorities while meeting established deadlines.
- Regular and predictable attendance.
Technologies you may use
- Java, C#, C/C++, Python, JavaScript
- APIs, web services
- SQL, database queries, stored procedures
- Git
- Agile, Scrum, DevSecOps
- CI/CD, continuous integration/continuous delivery
- Unit tests, integration testing, regression testing, system testing, user acceptance testing
Benefits
- 401(k)
- 401(k) matching
- AD&D insurance
- Dental insurance
- Disability insurance
- Flexible spending account
- Health insurance
- Health savings account
- Life insurance
- Paid time off
- Vision insurance
Physical requirements
- Prolonged periods sitting at a desk and working on a computer.
- Must be able to lift up to 15 pounds at a time.
Access and eligibility
- Ability to obtain a public trust.
Education and experience
Minimum experience: 2 years.
Education: Master’s degree in Computer Science, Software Engineering, Computer Engineering, Information Technology, or a related field (as listed).
Application questions
- What is your highest level of education?
- Do you have professional experience supporting a U.S. Federal Government agency or performing work under a federal government contract?
- How many years of professional software development/software engineering experience do you have?
- Which programming languages have you used professionally?
- Do you have experience working in Agile, Scrum, DevSecOps, or CI/CD environments?
- Are you legally authorized to work in the United States?
- Are you able to successfully complete and maintain the background investigation, suitability determination, Public Trust, or other access requirements required for the position?