Senior Python Developer (IRC294801)
Description:
We are looking for a Senior Developer to join the engineering group working to extend the Discovery product.
Although experienced in the particular technologies and tools we use is important, what we really care about is that you are passionate about and have a talent for all the things that are important for a good software engineer: solving hard problems; writing beautiful, maintainable code; and working as part of the team.
Discovery product is a βdiscovery toolβ: it scans networks and provides detailed information about the hardware and software it finds, including dependencies between them. This is tremendously useful to our customers, and the cool thing is that it gives you the opportunity to work on all sorts of code: from a sophisticated web UI to a hard-core C++-based proprietary graph database, with everything in between, including trying to talk to most enterprise hardware and software ever released. Trust us: there are hard and interesting problems to be solved here.
More information about the product can be found at https://www.helixops.ai/products/bmc-helix-discovery.html
Main technologies used:
β Python
β Virtualization
β Clustering
β Cloud
Requirements:
- Possessing 6+ years of progressive, hands-on experience in software development, prefer focusing on Python-based applications within an enterprise environment.
This role operates under a remote work model at the moment, requiring strong self-discipline and effective communication to collaborate seamlessly with distributed teams.
Required Skills:
- Expertise in one or more object-oriented programming languages, preferably Python
- Knowledge of software design patterns.
English (Upper-intermediate level to make sure he/she can properly communicate with the team in London)
Preferred Skills:
- Experience with AWS, Microsoft Azure, or other cloud technology,
- Knowledge of Linux
- Competent in Network and Computer Communications and Protocols
Job responsibilities
- Design and develop robust, scalable Python applications and services, ensuring high performance and responsiveness.
- Implement complex algorithms and data processing pipelines, particularly within machine learning, computer vision, and deep learning domains.
- Contribute to the architectural design and evolution of software systems, ensuring alignment with overall technical strategy.
- Lead the development of new features and modules, taking ownership from conception through deployment.
- Optimize existing Python codebases for efficiency, maintainability, and scalability, addressing performance bottlenecks.
- Collaborate with cross-functional teams, including product owners, data scientists, and other engineers, to define requirements and deliver solutions.
- Conduct thorough code reviews, providing constructive feedback and ensuring adherence to coding standards and best practices.
- Mentor junior developers, sharing technical knowledge and guiding them in problem-solving and skill development.
- Troubleshoot and debug complex software issues, identifying root causes and implementing effective resolutions.
- Develop and maintain comprehensive technical documentation for software designs, APIs, and operational procedures.
- Evaluate and integrate new technologies and tools to enhance development processes and product capabilities.
- Ensure the quality and reliability of software through rigorous testing, including unit, integration, and system tests.
Required skills experience
| Python | 6 years |
Required languages
| English | C1 - Advanced |
| Ukrainian | C2 - Proficient |