Share this Job

Software Architect (Cumulocity IoT Edge)

Cambridge
GB

This position is available in Cambridge

 

 

ABOUT US

 

Software AG's mission is to help organisations "turn data into value".

 

We’re a global software company founded over 50 years ago and continually growing and innovating. With a presence in over 70 countries, our customers include many of the world’s major airlines, well-known makers of sodas, chocolate and PCs, and key players in the rapidly expanding world of industrial IoT. Today Software AG employs more than 5000 people in 70+ countries and had total revenues of €890 million in 2019.

 

We’re passionate about software, passionate about our people, and passionate about using technology to create truly world-class products. 

 

ABOUT THE JOB

 

As Software Architect you are a key member of our IoT Edge R&D team, working to continuously develop our Cumulocity IoT Edge platforms; enabling our customers to allow millions of connected devices to be managed through public/private cloud and network edge deployments. Provide technical leadership, to the team in defining the vision, strategy and architecture of the Cumulocity IoT Edge platforms

 

 

Essential Job Functions

 

  • Mentor the R&D team and participate in deep technical architectural discussions to ensure the platform is designed and developed for successful deployment in Edge
  • Defining and documenting architecture, capturing and documenting functional/non-functional requirements and defining technical solutions to proposals
  • Working in a cross-functional Agile team to drive and deliver IoT platform features for Edge deployments through the complete development lifecycle from specification through to implementation, deployment and support
  • Contributing to the evolution of the product architecture, including leading projects to add significant new functionality and improving the performance, scalability and robustness of the Cumulocity IoT Edge platforms
  • Contribute and adopt practices such as reuse, defect prevention, process optimisation, process automation, productivity enhancement
  • Problem-solve issues with remote deployments
  • Designing and developing product software and automated test suites for high-performance distributed systems, covering all areas of testing (functional correctness, robustness and performance) at all levels (unit, system and end-to-end integration) in Edge deployments
  • Work on a wide variety of projects covering areas including Edge and Cloud computing, developing distributed and fault-tolerant systems, microservices, virtualisation, containerisation, etc.

                           

EXPERIENCE AND QUALIFICATIONS

 

You will already be an experienced software architect, ideally with a background in high-performance server-side development and practical experience of commercial software engineering.

 

Required:

 

  • BS/MS degree in Computer Science/Engineering
  • Firm understanding of the IoT architecture and principles
  • Expertise in several key IoT technology spaces including network topologies, transport protocols, cloud computing, embedded systems, stream processing, data management, analytics, security, identity management etc.
  • Depth/breadth of knowledge of multiple technological areas, and architectural areas, which includes knowledge of applicable processes, methodologies, standards, products and frameworks
  • Providing technical direction for architecture, design and development of significant software components from definition phase through implementation and deployment in a cross-functional team environment
  • Experience designing, developing, testing and debugging complex multi-threaded software.
  • Strong experience with designing and building microservices framework, including other concepts like security, scaling, robustness etc.
  • Background in Industrial IoT use cases and understanding of Edge computing
  • Virtualisation and containerisation, especially in technologies like Docker, Kubernetes, hardware virtualisation (hypervisors) software etc.
  • Solid scripting skills (e.g., Python, shell scripts, Perl, Ruby) and building frameworks using them
  • Experience with testing approaches and strategies
  • Strong programming background with an Object-Oriented Language (Java, C++) or functional ones (Python)
  • Strong technical troubleshooting and performance analysis of issues during the implementation and support
  • Familiarity with agile development tools and practices including continuous integration and deployment

 

Highly desirable:

 

  • Experience with programming in Rust or other system-level languages
  • Good networking knowledge would be a positive (OSI network layers, TCP/IP)
  • Experience with key technologies used in the Cumulocity platform, including Spring, Spring Boot, REST, MQTT, CoAP, MongoDB and Nginx
  • Experience with automation software (e.g., Chef, Ansible, Puppet)

 

Key Competencies:

 

  • Effectively communicate and influence both technical and non-technical stakeholders and customers
  • Productive in a globally distributed team through self-discipline and self-motivation, delivering according to a schedule

 

WHAT YOU CAN EXPECT

 

  • An opportunity to join a world-class team working in an exciting and rapidly growing domain.
  • A competitive compensation package including a performance-driven bonus.
  • A generous benefits package including pension and comprehensive medical insurance.
  • A great working environment located on St Johns Innovation Park, Cambridge.
  • Opportunities to travel to Software AG’s offices in the UK and overseas.
  • Additional benefits include: innovation/hack weeks, free fruit, at least 50 hours of dedicated time each year for learning/training and flexible working hours

 

YOUR RECRUITER

 

Please contact Holly at holly.greenfield@softwareag.com

 

This job description should not be construed to imply that these requirements and expectations are all inclusive.  In addition to items listed, incumbents are expected to follow company policies, adhere to company processes and programs and perform other related duties as assigned.