Software Engineer- job post DTC Global Services LLC
Job Description
The Software Engineer designs, develops, codes, tests, debugs, documents, implements, and maintains software applications and systems that support customer, business, and mission requirements. The Software Engineer analyzes technical and functional requirements and develops or modifies software solutions while considering system capabilities, limitations, operating requirements, performance, and desired results.
The position participates throughout the software development lifecycle, including requirements analysis, solution design, development, integration, testing, deployment, troubleshooting, documentation, maintenance, and enhancement of software applications.
Duties/Responsibilities:
Design, develop, code, test, debug, document, implement, and maintain software applications, components, interfaces, and supporting systems.
Develop and modify software procedures and applications to solve technical and business problems while considering system capabilities, limitations, operating requirements, performance, and desired results.
Analyze business, functional, and technical requirements and translate requirements into effective software solutions.
Participate in all phases of the software development lifecycle, including requirements analysis, design, development, testing, integration, deployment, maintenance, and enhancement.
Develop clean, efficient, maintainable, secure, and well-documented source code in accordance with established development standards and best practices.
Create and maintain software design documentation, technical specifications, process flows, diagrams, test documentation, and other system artifacts.
Develop, configure, and maintain application interfaces, APIs, web services, and system integrations as required.
Coordinate software requirements with existing and projected system capabilities and customer requirements.
Develop and execute unit tests and support integration, system, regression, and user acceptance testing activities.
Identify, troubleshoot, debug, and resolve software defects, application errors, performance issues, and integration problems.
Analyze existing applications and recommend modifications, enhancements, upgrades, or other improvements.
Support maintenance, sustainment, modernization, and enhancement of existing software applications and systems.
Participate in code reviews and technical reviews to improve software quality, security, performance, maintainability, and reliability.
Implement software changes and releases in accordance with established configuration management and change management processes.
Utilize source/version control tools to manage application code, changes, releases, and software baselines.
Support application deployments and software releases across development, testing, staging, training, disaster recovery, and production environments, as applicable.
Support automated build, test, deployment, and continuous integration/continuous delivery (CI/CD) processes, where applicable.
Develop and maintain database queries, stored procedures, data access components, and application/database integrations, as required.
Apply secure software development practices and support remediation of software vulnerabilities identified through security reviews, testing, scanning, or other assessment activities.
Monitor and evaluate application performance and recommend improvements to enhance reliability, scalability, usability, and efficiency.
Provide technical support and troubleshooting for applications and software components in development and production environments.
Support root-cause analysis and resolution of application incidents and recurring technical issues.
