Software Engineer (Go)
Company
Aurora Labs
Location
Remote
Type
Full Time
Job Description
About UsÂ
Aurora Labs is the development company behind Aurora—the EVM blockchain that runs on the NEAR Protocol. We are also the developers of, and integration partner behind, Aurora Cloud—a suite of products that allow Web2 companies to capture the value of Web3.
We invite you to be a part of our team of smart, professional, result-oriented and fun individuals. Join us to help ensure that our background processes run smoothly while we are striving to become the best in the industry.
About the team
Our infrastructure team is responsible for building and supporting critical systems required for running and accessing NEAR and Aurora networks. That includes everything on the path of RPC requests before they hit the blockchain and block production and event delivery once transactions are executed.
Load balancing, caching, queueing, transaction simulation and block production is processed by the services written and maintained by the infrastructure team. These services operate at large scale and process terabytes of data. The platform is based on open-source software, such as Kubernetes, NATS, Jetstream, Blockscout, Grafana, Postgres and Near-core, alongside a few internally developed services.
All internally developed services are written in Go and implement core pieces of functionality such as Mempool management, NEAR chunk distribution, transaction pre-processing and simulation.
About the positionÂ
This role is split between two responsibilities: software engineering (80%) and site reliability (20%).
Software Engineering projects include:
- Shield - a security service to protect users from making errors or executing malicious transactions.
- Mempool - a system to store/reorder transactions before they can hit the blockchain.
- Relayer - translates RPC calls on the read and write path from the end user.
- Explorer - Blockscout-based system that provides a user interface.
- Aurora Cloud - a system to automatically provision multiple infrastructure stacks for Aurora Engine.
- CLI tools for pubsub and streaming infrastructure operations.
- Indexers and blockchain event aggregation pipelines for monitoring purposes.
Reliability Engineering includes:
- Automating configuration and maintenance of software components such as K8s, NATS, Influxdb, Postgres, Cloudflare using e.g. Ansible, Terraform, Helm and kubernetes operators.
- Design and implementation of cloud-agnostic solutions without exclusively relying on specific cloud vendors.
- Optimizing the latency and throughput of the pub-sub infrastructure.
- Incident management, troubleshooting, monitoring, distributed tracing and recovery automation.Â
About you
You are a software engineer with experience of creating and maintaining backend systems. You are familiar with the entire Linux stack and can easily find a bottleneck in a distributed system. You have developed CLI tools and backend services before and are comfortable applying your software development skills to automate your daily operations or to create a microservice on the request path of the end users.
Key Qualifications
- Experience with Devops or SRE as an engineering subject area, with proficiency in Golang.
- Successful track-record and proven experience as a backend internet services software developer.
- Knowledge of SDLC, including continuous integration and testing methodologies.
- Understanding of base internet infrastructure services including DNS, HTTP, server virtualization, server monitoring in critical, large scale distributed systems.
- Understanding of SRE principals, including monitoring, alerting, error budgets, fault analysis, and other common reliability engineering concepts, with a keen eye for opportunities to eliminate toil by code and process improvements.
- Excellent verbal and written communication skills in EnglishÂ
Desired skills
- Deep familiarity with Go or other system-oriented programming languages.
- Experience with development within Kubernetes ecosystem, including operator framework, controllers and CRDs.
- Experience with streaming and pubsub systems such as NATS, Apache Kafka, Apache Pulsar.
- Automating operations processes via services and tools.
- Configuration management and fleet orchestration via Puppet, Chef, Ansible, or others.
- Cloud Services (AWS S3/EC2/CloudFront or equivalent).
In applying at this job, I confirm and acknowledge that I read and understood the Privacy Notice published at https://auroralabs.dev/privacy.
Date Posted
10/02/2024
Views
0
Similar Jobs
Account Manager, Care Partnerships - Headway
Views in the last 30 days - 0
Headway a mental health care company founded in 2019 aims to revolutionize mental healthcare by building a national network of providers accepting ins...
View DetailsDirector of Pricing - Garner Health
Views in the last 30 days - 0
Garner Health is a rapidly growing company backed by toptier venture capital firms Their mission is to transform the healthcare economy by delivering ...
View DetailsDirector, Product, Customer, and Lifecycle Marketing - Garner Health
Views in the last 30 days - 0
Garner Health is seeking an experienced Product Marketing Leader to join their team The ideal candidate will lead the product marketing efforts focusi...
View DetailsLinux Support Engineer - Voltage Park
Views in the last 30 days - 0
Voltage Park is seeking a Linux Support Engineer for a fulltime remote position The ideal candidate will have command line level Linux sys administrat...
View DetailsTechnical Architect - CDW
Views in the last 30 days - 0
CDW offers a rewarding career opportunity for a Technical Architect with expertise in ServiceNow The role involves delighting customers by collaborati...
View DetailsSenior React.js & Python Developer - Lemon.io
Views in the last 30 days - 0
Lemonio is a marketplace that connects Senior Developers with handpicked startups in the US and Europe They offer projects based on the developers exp...
View Details