Go Backend Engineer at Gravwell
Remote โบ ๐บ๐ธ 100% remote position (in the US) (Posted Sep 5 2021)
Please mention that you found the job at Golangprojects.com
Apply now!
About the companyGravell Inc. is a data analytics and security company composed of people with extensive backgrounds in penetration testing, reverse engineering, analytics, incident response, and large scale virtualization. We are striving to push the boundaries of traditional I.T. security and analytics products by enabling high-speed binary compatible analysis. Our platform is built from the ground up--not a bolted-together conglomerate of disparate technologies--and we take pride in enabling customers to ingest, store, and analyze all of their data without compromise. Gravwellโs core mission is to enable teams in IT, OT, and marketing to perform hunt operations, which means enabling humans to identify and understand data features and emergent behaviors in IT operations, physical systems, security incidents, and marketing.
Job description
Backend Software and Systems Engineer
Position Overview
The backend software and systems engineer position supports Gravwellโs software engineering and systems development group, which is responsible for the design, development, and testing of the core Gravwell analytics platform. Well-suited candidates are self-motivated and capable of working remotely on tasks which may be self-designated. The position is remote, but candidates must be resident in the United States.
The core platform is a highly concurrent distributed system designed to ingest and analyze all manner of data, including text, network traffic, executables, audio, and video. Candidates are expected to be competent in Go and concurrent programming, comfortable on a Linux platform, and capable of debugging and designing distributed concurrent systems.
Duties and Responsibilities
โ Design, development, and testing of Gravwellโs Go-based analytics and storage systems
โ Software development, system architecture, and API interfaces
โ Product documentation and training
โ Testing and development of remote ingest modules
โ Deployment platforms include BSD, OSX, Windows, and embedded systems
โ Development of data extraction, processing, and storage systems
โ Continuous integration and automated testing
โ Docker, Drone, etc.
Required Skills
A qualified candidate must be well versed in Unix process flow, task management, concurrent program design, distributed systems, and system security. Gravwell is a full-stack analytics platform; developers and engineers are responsible for data from generation to cold storage. The senior position requires a candidate that takes ownership of the platform, identifying and doing what is necessary to improve the team, the product, and the company at their own initiative.
The position requires minimal travel. Occasional extended travel involving a week or more of onsite support and analysis for large customers may be required. Extensive remote communications are required, and the candidate must have a quiet working environment and reliable means to interact with the rest of the remote team.
Software Engineering Requirements
โ Strong Unix fundamentals including but not limited to:
โ Process management
โ Network communications
โ Memory management
โ Kernel interfaces
โ Filesystems and file management
โ 5+ years experience with statically-typed systems languages
โ Any combination of C, C++, Rust, Go
โ 2 years experience with Go
โ Network and systems security
โ Network communications
โ IPv4, IPv6, TCP, UDP โ Operating systems
โ Linux, Windows, MacOS
โ Parallel processing and concurrency
โ Resource locking and mutual exclusion
โ Deadlock and livelock
โ Strong speaking and writing skills
โ Fluent in English
Preferred but not required skills
โ Software reverse engineering and protocol design
โ Able to reverse engineer a black box system or network stream and develop a
decoder
โ Language experience
โ Assembly, C, C++, C#, Rust, Python, Java
โ Lexing and grammar parsing for high speed data dissection
โ Cryptography fundamentals and code protection
โ Distributed system design
โ Federated data storage
โ Fault tolerant design and recovery
โ Web interfaces
โ REST, websockets, API design
โ Penetration testing and incident response
Please mention that you found the job at Golangprojects.com
Apply now!