Senior Python Software Engineer
design, development, and optimization
Key Responsibilities:
- Develop and maintain a variety of internal software applications using Python and related technologies.
- Collaborate with cross-functional teams to design, develop, and implement new features and enhancements.
- Ensure software solutions meet standards for scalability, performance, and security.
- Write clean, efficient, and well-documented code that satisfies project requirements.
- Participate in code reviews, providing and receiving feedback to improve overall code quality.
- Debug, troubleshoot, and resolve software defects and technical issues in a timely manner.
- Follow agile development methodologies, participating in sprint planning, daily stand-ups, and retrospectives.
- Continuously improve technical skills and stay current with industry best practices and emerging technologies.
- Conduct comprehensive unit and integration testing to ensure code quality and reliability.
- Assist in the deployment of applications and provide ongoing maintenance of production environments to ensure smooth operations.
Required Skills & Experience
- At least 5 years of continuous, professional experience as a Python3 Software Engineer, developing, deploying, and maintaining production-grade applications.
- Minimum 3 years of hands-on experience with at least 4 of the following Python frameworks, libraries, and tools: FastAPI, Pydantic, SQLAlchemy, Pandas, and messaging queues (e.g., Celery, Kafka, RabbitMQ).
- Minimum 3 years of experience working in a Linux/Unix environment with expertise in system navigation, scripting, and troubleshooting.
- Deep understanding of best practices for building scalable, high-performance, and secure software solutions.
- Strong analytical, problem-solving, and debugging skills with a proven ability to diagnose and resolve complex issues efficiently.
- Demonstrated commitment to continuous learning, innovation, and enhancing both individual and team performance
- Extensive experience with unit and integration testing.
- Proven expertise in designing, implementing, and maintaining robust unit and integration tests to ensure software reliability and quality.
- Ability to troubleshoot and resolve dependency conflicts, versioning issues, and environment inconsistencies.
- Self-starter with the ability to independently set up a complete Python development environment from scratch.
- Proven ability to collaborate effectively with cross-functional teams to drive projects forward and deliver high-quality solutions.
- Bachelors degree in Computer Science, Engineering, or a related field, or equivalent practical experience.
Preferred Qualifications:
- 1+ years of experience with Python packaging using setuptools, Poetry, or related tools.
- Familiarity with publishing Python packages to PyPI or private repositories.
- Experience automating package builds and releases (e.g., GitHub Actions, Bitbucket Pipelines, CI/CD).
- Strong ability to diagnose and resolve dependency conflicts, versioning issues, and environment inconsistencies to ensure seamless development and deployment workflows
- Experience designing and configuring Python-based stacks, including FastAPI
,
Pydantic, SQLAlchemy, Pandas, Celery and other relevant libraries. - Comfortable compiling and installing Python from source when necessary.
- Bachelors degree in Computer Science, Engineering, or a related field, or equivalent experience
Commitment to Continuous Learning:
Proven commitment to continuous learning, staying ahead of industry trends, and driving innovation by adopting emerging technologies, optimizing best practices, and applying creative problem-solving to real-world challenges. This includes actively exploring advancements in software development, contributing to open-source projects, obtaining relevant certifications, or implementing innovative solutions to improve efficiency and scalability."
Examples:
- Staying current with Python ecosystem updates (e.g., migrating to FastAPI for better performance and async capabilities).
- Contributing to open-source projects or engaging with developer communities.
- Earning industry certifications (e.g., AWS Certified Solutions Architect, Google Cloud Professional Developer).
- Implementing automation to streamline CI/CD pipelines and enhance deployment efficiency.
- Researching and adopting best practices for security and performance optimizations in production environments.