Senior Software Engineer-4264206

TCG•Washington, DC
•Hybrid

About The Position

TCG is seeking a Senior Software Engineer to support a service conversion project for the Federal government. The engineer will analyze existing Bash scripts and batch processes and convert them into secure, efficient, maintainable Python solutions while preserving their functionality and expected results. The role includes validating functional equivalency, minimizing operational risk, and supporting reliable production performance. The position requires on-site work two days per week in Washington, DC. Candidates must live within commuting distance of Washington, DC, be U.S. citizens, and be able to pass a Federal government clearance check. All hires must also pass a pre-employment background investigation that includes employment and education verification and criminal and DMV checks. Additional documentation and background checks apply to positions requiring Federal clearance.

Requirements

  • At least seven years of professional experience in software development, scripting, or a related technical role.
  • Experience with Linux/Unix environments, Bash shell scripting, and Python development.
  • Ability to troubleshoot network connectivity and authentication issues in a secure environment and work with infrastructure staff to address them.
  • Experience analyzing existing code, troubleshooting issues, and translating business logic into maintainable software solutions.
  • Experience developing and executing test cases to validate software functionality, accuracy, and reliability.
  • Strong debugging and problem-solving skills, including log analysis and root-cause identification.
  • Ability to work independently, prioritize competing tasks, and contribute with minimal supervision.
  • Strong written and verbal communication skills, including producing clear technical documentation.
  • U.S. citizenship and ability to pass a Federal government clearance check.
  • Must live within commuting distance of Washington, DC.

Nice To Haves

  • Familiarity with automated batch processing and job scheduling.
  • Background implementing customer-facing applications and sound judgment about usability when implementing customer-facing features.
  • Understanding of and ability to implement systems using CAS and/or certificate-based authentication.
  • Experience with automated testing tools, Git, and continuous integration practices.
  • Knowledge of secure coding practices and web application security, including OWASP.
  • Familiarity with Atlassian products such as Jira and Confluence, and CI/CD tools such as Jenkins.
  • A bachelor's degree in Computer Science, Information Technology, or a related field is desired; four years of relevant experience is acceptable in lieu of a degree.

Responsibilities

  • Analyze existing Bash scripts and batch jobs, including their business logic, dependencies, inputs, outputs, schedules, and error handling.
  • Rewrite Bash-based jobs in Python while preserving functionality, processing logic, and expected results.
  • Refactor and optimize converted scripts for code reuse, efficiency, readability, reliability, maintainability, and resource utilization.
  • Apply Python development practices such as modular design, reusable components, exception handling, logging, configuration management, and secure coding.
  • Identify and resolve compatibility issues, technical dependencies, and operational risks involved in migrating legacy batch processes.
  • Develop and maintain an isolated test environment for developing, executing, and validating converted jobs without adversely affecting production systems.
  • Create, execute, and document test cases that verify converted batch jobs' accuracy, completeness, and reliability.
  • Compare Python implementations with Bash counterparts to demonstrate functional equivalency and identify discrepancies.
  • Test normal processing, boundary conditions, error scenarios, and recovery behavior.
  • Document conversion activities, technical decisions, test results, known limitations, and operational procedures.
  • Identify and remediate software defects, investigate errors through log analysis and debugging, and implement corrective actions.
  • Follow applicable security requirements and best practices for credentials, sensitive data, file permissions, and system interactions.
  • Provide production support for assigned systems and batch services, investigate failures, resolve incidents, and implement fixes.
  • Collaborate with project team members, technical stakeholders, and end users to clarify requirements and ensure converted services meet operational needs.
  • Participate in project meetings, report progress, communicate technical risks and dependencies, and identify delivery issues.
  • Stay current with relevant Python practices, scripting technologies, security standards, and automation techniques.
  • Perform other duties as assigned.

Benefits

  • Health care
  • 401K
  • Parental leave
  • Adoption assistance
  • Financial planning services
  • Student loan repayment assistance
  • Training budget
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service