- Develop high performance and highly scalable message-driven applications for Linux
- Write testable and highly reliable code
- As part of a highly efficient delivery team, participating in planning and design activities
Qualifications
Please apply for this job if:
- you have at least 4 years+ of Golang experience
- OR you have 5-10 years of working experience with C/C++ and willing to give Golang a try.
Key Skills
- Experience with development of message-driven applications
- Experience with one or more messaging protocols and message brokers - MQTT, AMQP, NATS, NCQ, Kafka, etc,
- Understanding of performance bottlenecks, i.e CPU caches, Linux caches and optimizations
- Understanding of different encryption, digital signature, authentication and authorization technologies
- Understanding of REST and gRPC APIs.
- Experience with writing C/C++ applications
Bonus skillset 1 - System Programming
- Understanding of systemd, d-bus, socket activation
- Understanding of Linux Networking stack, i.e. Netlink interface, systemd-networkd, etc.
- Understanding of application packaging - deb, rpm, etc
- Previous C/C++ programming experience
- Understanding of Linux boot process and UEFI
- Understanding of TPM and root of trust concept
Bonus skillset 2 - Industrial Protocols
- Understanding some of the industrial protocols (i.e. Modbus, Ethernet/IP, CANbus, BACnet, etc.)
- Understanding of real-time applications
Bonus skillset 3 - Virtualization
- Understanding virtualization and container technologies - livirt, lxc/lxd, Docker, kvm, etc.
- Experience with license management systems
Bonus skills - Other
- Experience with python
- Experience with ML
Additional Information
Standard benefits included (medical, dental, vision, suppl.), travel stipend, great snacks, company outings & potential for stock options.