This position will assist in the creation, management, and operation of Dev-Ops-related tools, processes, and technologies that enable the development and ongoing operation of the IoT Platform.
• Create Dev-Ops-related tools, and best-practices to support the IoT Platform engineering teams to build, debug, test, release, manage and secure the microservices-based cloud infrastructure.
• Collaborate in defining the methodologies that enable build-out the IoT Platform.
• Promote and implement best practices and supporting tools/technologies for source control management, CI and CD architectures, performance, SLAs, security, audit, and monitoring that will be used by every engineer within the IoT Platform organization.
• Define frameworks and software libraries that support the creation of efficient, scalable, and highly available microservice-based architectures.
• Support and troubleshoot issues and identify areas for continuous improvement with a particular emphasis on quality, performance and security.
• Work closely with architects and technical product managers to translate overall system architecture and product requirements into well-designed, implemented and tested software solutions.
• Work in an Agile environment to deliver high-quality software in an incremental manner.
• 8+ years of proven, hands-on track-record as a software engineer, focused on cloud-based systems
• Expertise developing microservices and complex microservice-based platform architectures
• Strong Java Development skills, preferably with Ver. 1.8
• Proven track record developing cloud-based services (SaaS) and platforms (PaaS)
• Hands-on in-depth experience of AWS is required, both in terms of traditional technologies (e.g. EC2, S3, DynamoDB, RDS) as well as recent cutting-edge paradigms (e.g. Lambda, API Gateway, Fargate)
• Excellent understanding of distributed systems, designing for scalability, performance, and availability
• Experience of establishing non-functional best-practices and deploying supporting technologies for improving platform security (including audit) and reliability (latency, availability, scalability)
• Knowledge of distributed network architectures and network security is required
• Good knowledge of data persistence technologies including relational databases and no-SQL solutions • 3+ years in teams applying modern agile software development practices
• Excellent interpersonal and technical communication skills
• B.Sc. in Computer Science or related Engineering required, a Master’s degree is desirable