Summary
Join High Tech Genesis as a Golang Software Developer to contribute to an existing telecom application used by thousands globally. This role offers a fantastic learning opportunity and collaboration with leading experts in networking technologies. You will add features to the application, working with a mix of Golang and Python. The ideal candidate possesses 8+ years of software development experience, expertise in distributed systems, and a strong understanding of low-level languages like C. You will need experience with Agile development, testing, and database queries. Bonus skills include Golang development, Kubernetes, and network service experience.
Requirements
- 8+ years of software development experience
- Experience working with Agile development processes
- Experience in distributed systems
- Understanding of challenges with lost, delayed, or duplicated messages and how to handle them in code
- Experience writing appropriate tests to discover corner cases and performance bottlenecks
- Experience understanding memory and performance and reliability consequences on choosing a given API call (sync vs async) or a data structure over another
- Reasonable degree of autonomy. Should be able to own a feature, work along other team members on the high-level design, and successfully drive the feature to completion, including data migration, testing and deploy to green and brownfield deployments
- Experience in a low-level language (for example C)
- Understanding of how network devices operate
- Intermediate knowledge of SQL / Cypher database queries
- Knowledge of REST and gRPC APIs: OpenAPI and protocol buffers
- Able to contribute to code reviews looking for potential/hidden problems in the code. Look for corner cases / "what if" scenarios on the code under review
Responsibilities
- Develop and maintain features for an existing telecom application
- Work with Agile development processes
- Design, develop, and implement features for a large-scale distributed system
- Write code that handles lost, delayed, or duplicated messages
- Write comprehensive tests to identify corner cases and performance bottlenecks
- Understand the memory and performance implications of API calls and data structures
- Own features from design to deployment, including data migration and testing
- Work with a low-level language (e.g., C)
- Understand the basic operation of network devices
- Write SQL and Cypher database queries
- Work with REST and gRPC APIs (OpenAPI and protocol buffers)
- Contribute to code reviews
- Write small scripts/tools to improve workflow
Preferred Qualifications
- Experience writing production quality level code and test cases in Golang
- Practical knowledge about Kubernetes, building container images (docker, kaniko, ko)
- Experience with brokers or other pubsub technologies: Knative, kafka, Redis streams, etc
- Experience building network services in NSO (YANG models, callbacks)
- Experience building network monitoring services (SNMP, Netconf, Restconf)
- Experience building VPN network services using EVPN, QinQ or other VPN/tunneling technologies
- Knowledge of OpenTelemetry
- Experience writing K6 performance validation tests
Disclaimer: Please check that the job is real before you apply. Applying might take you to another website that we don't own. Please be aware that any actions taken during the application process are solely your responsibility, and we bear no responsibility for any outcomes.