Job
Description
About the job:
The Red Hat Satellite Engineering team is seeking a Software Engineer who is highly motivated and a versatile Python Developer to join our dynamic team in Pune, India. This role offers a unique opportunity to work across both development and quality assurance functions, ensuring the robustness, reliability, and performance of our solutions. The ideal candidate will possess a strong technical background in Linux environments, proficiency in Python development, and a solid understanding of networking and system administration. This role will involve contributing to a system management solution called Red Hat Satellite based on upstream projects like Foreman, Katello. It is written in Ruby on Rails and supports provisioning on various hypervisors and cloud services and automation written in Python ( robottelo). Our team is global, and our stack is open-sourced, including technologies like Python, Pytest, Ruby, Ruby on Rails, PostgreSQL, Sinatra, and React. You'll have the opportunity to work on real-life issues of an on-premise enterprise product with thousands of existing users.
What will you do?
Design, develop, and maintain automated tests for our software solutions' testing frameworks
Contribute features and bug fixes in collaboration with other team members
Collaborate with other team members on analyzing and fixing bugs in the project
Incorporate feedback from other team members during PR reviews to drive development tasks to a successful conclusion
Collaborate across time zones and geolocations with cross-functional teams, including other engineering teams, product management, UX designers
Publicly communicate planned changes with developers and users, gathering their inputs and incorporating them into your work
Work on prototypes for new enhancements, experimenting with new tools and projects to further improve the system
Demonstrate contributions to stakeholders and the community
Proactively utilize AI-assisted development tools (e.g., GitHub Copilot, Cursor, Claude Code) , Explore and experiment with emerging AI technologies relevant to software development, identifying opportunities to incorporate new AI capabilities into existing workflows and tooling
What will you bring?
Relevant 2+ years of hands-on experience in Python development, including designing, coding, and debugging applications
Experience using Pytest for writing and maintaining automated tests
Hands-on experience with a Linux distribution i.e. any one of ( RHEL/Rocky/Alma/CentOS Stream/Suse)
Good understanding of networking concepts ( TCP/IP, DNS, DHCP, routing, firewalls) and ability to troubleshoot network issues
Familiarity or experience with front-end technologies such as React, Redux, Django, or Flask
Strong troubleshooting skills and ability to solve technical issues independently
Proficient in English (both written and verbal communication)
Experience with Git or other version control systems
Passion for continuous learning and keeping up with new technologies and industry trends
The following are considered a plus:
Knowledge of Ruby, CI practices, Kubernetes, and container technologies (e.g., Docker, Podman)
Experience with configuration management tools like Puppet or Ansible
Familiarity with network booting mechanisms such as PXE or iPXE
Exposure to virtualization/cloud platforms like VMware, KVM, OpenStack, AWS, Azure, or GCP
Understanding of PostgreSQL database administration and interaction
Contributions to open-source projects