Software Engineer (VoIP application and service development)

Arbetsbeskrivning

Company Description

At CERN, the European Organization for Nuclear Research, physicists and engineers are probing the fundamental structure of the universe. Using the world's largest and most complex scientific instruments, they study the basic constituents of matter - fundamental particles that are made to collide together at close to the speed of light. The process gives physicists clues about how particles interact, and provides insights into the fundamental laws of nature. Find out more on http://home.cern.

Job Description
Introduction

Are you a talented software engineer, passionate about developing web applications using state-of-the-art UX/UI technology? Do you enjoy designing scalable back-end systems for communication systems? Work with us to develop and evolve CERN's next-generation VoIP telephony solutions!

The Communication Systems (CS) Group is responsible for all aspects of network and telephony provision at CERN. We support a campus network (cabled and Wi-Fi) with over 50,000 connected devices, a 5Tb/s non-blocking switching fabric for a data centre with over 10,000 servers, more than 4,000 of which with 10Gb/s interfaces, and external connections including multiple trans-border 100Gb/s circuits. The Group also operates its own fixed telephony system (12000 lines), dedicated mobile telephony services (6500 subscriptions), a TETRA digital radio system (500 terminals) and a LoRaWAN network.

More information on the IT Department can be found at: http://cern.ch/it.

Functions

As a member of the Telecom and Radio (TR) Section in the CS Group, you will participate in developing and delivering new VoIP (Voice-over-IP) solutions for mobile and desktop devices.

Your main functions will include:
-Contribute to the design, development, deployment and maintenance of mobile and desktop softphone client applications and back-end services, interfacing them with CERN's Asterisk-based fixed telephony services.
-Ensure the proper integration of these applications and services within the CERN's Puppet-based Agile Infrastructure and DevOps tools.
-Participate in the daily management of these services, which includes building and deployment of software packages, performance and availability monitoring, providing engineering-level support and computing security.
-Produce procedures and documentation following the ITIL recommendations to be used by technicians and engineers in operational activities.

Qualifications

Master's degree or equivalent relevant experience in the field of computer science, telecommunications, or a related field.

Experience:

The candidate should have demonstrated practical experience in several of the following areas:
-In-depth experience developing large web-based, end-user application packages on Windows, Linux and macOS.
-Extensive experience developing scalable, Linux-based, multi-tier web and back-end services.
-Demonstrated experience in the software development life cycle: unit testing, continuous integration, version control.
-Good knowledge of SQL, database systems, and their integration with Python/Java based applications.

Experience in one or more of the following would be an asset:
-Experience in the development of VoIP client and back-end applications, and/or in deploying VoIP services (Asterisk, Kamailio).
-Experience in application testing, deployment and debugging on mobile Android/iOS environments.
-Experience in mobile Android/iOS development tools and frameworks (Android Studio, XCode) as well as programming languages and libraries (Java, Objective-C, Swift).
-Experience deploying services within cloud-native environments (Kubernetes / OpenShift).

Technical competencies:
-Knowledge of programming techniques and languages: extensive knowledge of Python, JavaScript, Java, CSS, HTML, shell scripting. Programming knowledge in C/C++ would be a plus.
-Development of application software: design and implementation using REST-based APIs/microservices; frameworks like Flask, Spring Boot, React, Electron; libraries including Redux, Node Keytar, Jest, Pytest. Design of state-of-the-art UX/UI interfaces. Integration with monitoring services (Grafana, InfluxDB).
-Design of databases/repositories: experience with relational databases (MySQL, Oracle) and schema modelling.
-Knowledge and application of software life-cycle tools and procedures: git and automated build, testing and packaging. Release management Continuous Integration / Continuous Delivery frameworks such as GitLab. Agile methodologies like Scrum/Kanban, issue tracking systems like Jira.
-Re-use, refactoring, integration and porting of existing software: customisation and configuration of existing software packages such as VoIP apps on mobile platforms.
-Knowledge of communication technologies and protocols: voIP protocols such as webRTC, SIP, SDP and RTP.

Behavioural competencies:
-Solving problems: seeking and integrating other points of view when tackling an issue; consulting experts in the field and undertaking benchmarking.
-Achieving results: delivering prompt and efficient service taking into account customer needs.
-Working in teams: building and maintaining constructive and effective work relationships.
-Learning and sharing knowledge: keeping up-to-date with developments in own field of expertise and readily absorbing new information; sharing knowledge and expertise freely and willingly with others; coaching others to ensure knowledge transfer; proposing ways to improve or streamline existing procedures, processes and methodologies.
-Communicating effectively: expressing opinions, ideas and suggestions with conviction and in a logical/structured manner; keeping to the point; listening actively to others and letting others speak; checking to ensure that the message has been well understood.

Language skills:
-Good knowledge of English is required; ability to draw-up technical specifications and/or scientific reports and to make oral presentations.
-Basic knowledge of French or an undertaking to acquire it rapidly.

Additional Information
Eligibility and closing date:
This vacancy will be filled as soon as possible, and applications should normally reach us no later than 18.03.2020

These functions require:
.Work during nights, Sundays and official holidays, when required by the needs of the Organization.
.Stand-by duty, when required by the needs of the Organization.

Sammanfattning

  • Arbetsplats: CERN
  • 1 plats
  • 6 månader eller längre
  • Heltid
  • Fast månads- vecko- eller timlön
  • Publicerat: 19 februari 2020
  • Ansök senast: 18 mars 2020

Liknande jobb


Mjukvaruutvecklare

23 december 2024

23 december 2024