Job Description
Applied R&D (AR) consists of target-oriented research either with the goal of solving a particular problem / answering a specific question or for multi-discipline design, development, and implementation of hardware, software, and systems including maintenance support. Supplies techno-economic consulting to clients. AR work is characterised by its detailed and complex nature in order to systematically combine existing knowledge and practices to further developing and incrementally improving products, operational processes, and customer-specific feature development.
Software (SWA) comprises the definition, specification, and allocation of requirements from different sources utilising knowledge of systems engineering processes (specification & architecture). Contains processing of use case and feature requirements into conceptual models, operational scenarios, technical requirements, and functional description. Covers specification, design, implementation, and unit testing of Software (e.g. device drivers, microcode, hardware-related software & firmware) according to the requirements and architecture defined in the systems engineering process. Covers establishment and maintenance of Software Configuration Management (SCM) practices into software development projects, continuously building and integrating infrastructure tools and systems.
How You Will Contribute And What You Will Learn
- On-time product delivery with world class quality
- Design, code, test, automate and debug in JavaScript, core Java and XML using NETCONF/SNMP based frameworks, following DevOps model
- Prototype based on cutting edge technologies (OSGi, Microservices, Kubernetes, Elasticsearch, Python, GraalJS, React, SDN/NFV, etc.) to evolve product architecture
- Effective review of code and test designs
- We are looking for a passionate engineer who can be trusted to deliver high quality products and can challenge the status quo. We expect candidate to have a broad interest in the software engineering field and help us to continuously explore new technologies to enhance the product and processes.
Key Skills And Experience
You have:
- Master's or bachelor's degree in computer science, Communication Engineering, Electrical Engineering, or a related technical field
- Core Development Expertise: 6 to 10 years of strong, hands-on experience in software development, architecture, and advanced troubleshooting, with a significant focus on the J2EE platform.
- Modern Technology Stack Proficiency: Hands-on experience and strong proficiency in several of the following areas: Cloud & Virtualization, Containerization & Orchestration (Docker, Kubernetes), Microservices, Data Processing & Storage (Elasticsearch, Kafka, SQL & relational databases), Middleware & Frameworks (OSGi, Spring Framework), Security (Secure coding practices, authentication/authorization mechanisms), Networking (SDN/NFV, network protocols), Web Technologies (Advanced front-end frameworks like React), RESTful APIs.
- Programming & Scripting: Strong proficiency in multiple programming and scripting languages, including Java/J2EE, JavaScript (Node.js, GraalJS), Python, and modern front-end frameworks like React.
- DevOps & Agile Leadership: Deep understanding, practical experience, and a strong advocate for modern software engineering practices, including DevOps principles, CI/CD pipelines, Agile methodologies, and comprehensive test automation strategies.
- Data Intelligence & Machine Learning: Experience applying Data Analytics, Artificial Intelligence (AI), and Machine Learning (ML) concepts to solve real-world problems within software solutions.
- Development Tooling Expertise: Proficient working knowledge and practical experience with modern Integrated Development Environments (IDEs), comprehensive testing frameworks, defect tracking tools, and modern version control systems (e.g., Git).
- Cloud & Network Management Solutions: Prior experience in the design, development, and deployment of cloud-based solutions and/or network management systems.
It would be nice if you also had:
- Innovation & Continuous Learning: A strong, demonstrable passion for exploring, evaluating, and adopting new technologies, tools, and methodologies to solve challenging technical problems and drive product innovation.
- Software Development Lifecycle Proficiency: Solid understanding and practical application of the modern software development lifecycle, including applying best practices for development, testing, and deployment.
- Next-Generation Network Protocols: Working knowledge and experience with access technologies and next-generation management & control plane protocols such as NETCONF/YANG, IPFIX, gRPC, and similar.