Sr. Software Engineer 182139
- Covington, KY, United States
Applications open in a new tab.
Job details
- Posting language
- English
- Posted
Original job description
The Role
- Design, develop, test, deploy, and maintain production-quality Python applications, APIs, libraries, packages, and reusable components.
- Apply object-oriented programming, modular architecture, design patterns, and clean-code principles to create maintainable, extensible, and scalable software.
- Demonstrate advanced Python proficiency, including classes, modules, functions, data structures, type hints, packaging, dependency management, exception handling, and asynchronous or parallel-processing concepts.
- Implement standardized patterns for logging, configuration management, command-line interfaces, input validation, error handling, and failure recovery.
- Develop reusable frameworks, utilities, templates, and self-service capabilities that reduce duplication and improve developer productivity.
- Write comprehensive unit, integration, and regression tests using appropriate mocking, fixtures, automation, and code-coverage practices.
- Diagnose software defects, runtime failures, and performance bottlenecks; conduct root-cause analysis and implement sustainable remediation.
- Design, configure, deploy, and support containerized applications on Kubernetes in AWS, Azure, or comparable public-cloud environments.
- Use Infrastructure as Code tools such as Terraform, AWS CloudFormation, or Azure Resource Manager templates to automate cloud and platform infrastructure.
- Build and maintain CI/CD workflows using technologies such as GitHub, Jenkins, and Artifactory for source control, testing, packaging, artifact management, deployment, and release automation.
- Implement structured logging, metrics, dashboards, monitors, and alerts to support highly available and operationally reliable applications and platforms.
- Apply secure software-development practices, including peer reviews, dependency management, vulnerability remediation, secrets protection, and secure cloud configuration.
- Apply relational database concepts and SQL skills when designing application persistence, integrations, or data-processing solutions.
- Participate in technical design reviews, architecture discussions, code reviews, and the definition and adoption of engineering standards.
- Collaborate with software engineers, platform engineers, architects, support teams, and business stakeholders to translate evolving requirements into effective software solutions.
- Produce technical designs, application documentation, operational procedures, troubleshooting guides, and root-cause analysis records.
- Use AI-assisted development tools, including coding copilots and large language models, to improve development, testing, documentation, code review, and troubleshooting.
- Demonstrate strong problem-solving, communication, collaboration, and influencing skills, with a consistent focus on automation, software quality, reliability, and operational perfection.
- Experience developing enterprise Python applications, backend services, API integrations, automation tools, internal frameworks, or platform-engineering software is preferred.
- Experience with Kubernetes troubleshooting, cloud-platform engineering, high-availability design, application performance testing, and enterprise observability platforms is preferred.
- Success in this role will be measured primarily by the delivery of high-quality, maintainable, well-tested, and production-ready Python software, along with improved software reuse, automation, platform reliability, and developer productivity.
Nice to have:
- Familiarity with ETL/ELT pipelines, Apache Airflow, Apache Spark, and distributed data-processing concepts is beneficial.
- AWS or Azure cloud certification is a plus.