Rockcruit

We are seeking an experienced and highly skilled Python developer to join our growth partner’s team. Your primary responsibility will be to develop, maintain, and extend server-side applications and services using Python, while also working with other back-end technologies such as Node.JS and Java. You will ensure the seamless integration of applications with databases and build & deployment automation processes. While Python will be the main technology, a strong understanding of Node.JS will be important for certain parts of the stack. Your role will involve maintaining high-quality code, implementing unit tests, developing integration tests, and working in a collaborative and agile environment.

Responsibilities

  • Develop server-side applications and services primarily using Python, while also working with additional back-end technologies such as Node.JS and Java as needed.
  • Collaborate with cross-functional teams to integrate Python and Node.JS solutions with other parts of the tech stack.
  • Write and maintain comprehensive unit tests to ensure code quality and reliability.
  • Develop and maintain integration tests to verify the interaction between system components.
  • Work on build and deployment automation (CI/CD) using tools like GitHub Actions, Jenkins, or TeamCity.
  • Implement and maintain real-time communication features, such as those provided by SocketCluster, especially when integrating Python and Node.JS.
  • Manage and interact with databases, ensuring efficient queries, performance optimization, and data integrity.
  • Maintain and extend an existing codebase, adhering to existing coding patterns, and tracing the execution flow for efficient debugging and scaling.
  • Ensure high availability, scalability, and performance of Python services, with occasional need for optimization on the Node.JS side.
  • Troubleshoot, debug, and resolve issues in a timely manner across various environments.
  • Follow and implement best practices in coding standards, version control (Git), and software deployment.
  • Stay up to date with the latest trends and advancements in Python, Node.JS, software development, and system architectures.

Experience & Qualifications

  • Expert experience with Python and familiarity with other back-end technologies such as Node.JS and Java.
  • Strong understanding of Node.JS and how it integrates with Python services, especially for handling parts of the tech stack that require real-time features or performance optimization.
  • Expert experience developing unit tests to ensure high code quality and reliability.
  • Intermediate experience developing integration tests to verify the interaction between different system components.
  • Intermediate experience with CI/CD tools such as GitHub Actions, Jenkins, or TeamCity to automate build and deployment processes.
  • Experience with SocketCluster for real-time, bi-directional communication (optional, secondary).
  • Solid understanding and experience working with databases (e.g., SQL, NoSQL).
  • Expert experience with version control systems (Git) and handling branching, merging, and pull requests.
  • Experience in maintaining and extending an existing codebase, understanding and adapting to pre-existing coding patterns.
  • Ability to trace code’s path of execution to diagnose and resolve issues efficiently.
  • Strong problem-solving skills and attention to detail.
  • Excellent communication skills, both written and verbal, to collaborate effectively with the team.
  • Ability to work in an agile environment, adapting to changing requirements and delivering results on time.
  • Passionate about clean code, scalability, and performance in production-level systems.
  • Fluent in English (both written and conversational).