As a Professional Services Orchestrate Software Developer, you'll be integral to our Agile development process, working closely with our professional services team to deliver high-quality software components. Your role is crucial in ensuring the success of our carrier-class networking and cloud-based projects, demanding a vigilant focus on priorities and project plans.
- Experience in distilling requirements into actionable design documents, demonstrating a strong understanding of software development processes.
- Technical knowledge and experience with Transport Networks, DWDM, OTN, SONET/SDH, and Ethernet are essential.
- Proficiency in Camunda (workflow) is a must, ensuring efficient workflow management.
- Strong software language skills in Python or similar, with at least 6 years of experience, are required.
- A solid understanding of Linux (Ubuntu/RHEL) and Cloud environments (e.g., AWS, OpenStack) is necessary for successful deployment and management.
- Experience in developing services delivered as Docker or other virtualized containers, Rest API, and Micro-services architecture in a DevOps-based cycle.
- Exposure to Network Automation, OSS - Fulfilment stack, Path Computation, and Network Topology is desirable.
- Familiarity with network modelling following TPE-FRE, TMF, or TAPI is an asset.
- Experience with data and service modelling using TOSCA, JSON Schema, Swagger, and YANG is advantageous.
- Knowledge of distributed high-throughput messaging systems, such as Apache Kafka, and database programming with Postgres and Neo4j is preferred.
- Collaborate within an Agile development environment to develop and deliver SW components as directed by the Architect or Delivery Manager.
- Create software container-based micro-services, libraries, and features for Resource Adapters (RAs), Service templates, and data model updates (Tosca/Netconf/Yang) in the telco transport domain.
- Conduct internal testing and validation of developed components.
- Stay updated with new technologies, and releases through self-training and education.
- Engage with customers to understand their requirements, provide clarifications for implementation, and facilitate user acceptance testing.
- Write quality code with high availability for large-scale applications, ensuring modularity and scalability.
- Adhere to execution excellence standards, maintaining a sharp focus on project priorities and plans.
- Document development processes and provide clear, concise documentation for future reference.
- Analyze complex problems and propose innovative solutions, contributing to the overall success of the team.
- Actively participate in team discussions, sharing knowledge and expertise to enhance the development process.