Murano Software, Vacancy Senior Software Engineer: Data Mastering
https://muranosoft.team/vacancy/5308
For this, we plan to launch a greenfield project that will combine REST API design, concurrent processing, larger-scale datasets (tens of TB), and rules engine design. We are looking for a full-stack, senior software developer who is excited to implement, and enhance such a system.
What the position entails
This position is truly full-stack, which means that you will:
Design and implement processing pipelines, including:
Design and implement REST API interfaces to the system, including:
Required Skills
In the following list of required skills, "substantial" means that you've personally implemented and supported at least two different production projects using the following technologies, and that those technologies have been used by live users at a non-trivial scale. "Some experience" means that you've used the technology, although perhaps not as the primary designer/implementer, in production applications, and/or at meaningful scale.
Spoken language: You speak English at a C1 level or better
Programming language: Substantial development experience in Go.
Framework: Substantial REST API development in a web framework designed for convention-based development of API endpoints (gin, etc.) including
Concurrent processing: Some experience designing and implementing state machine pipelines for high-volume concurrent processing of events or data records. This should include a comfortable working knowledge of NATS, Kafka, RabbitMQ, or a similar open-source message broker.
Database design:
Substantial experience designing, implementing, and tuning RDBMS schemas to handle hundreds of GB or more of data, ideally using sharding or other horizontal scaling approaches.
Some experience designing and implementing search engines based on Elasticsearch, Opensearch, Solr, or Lucene, including:
Some experience with multi-tenancy in both the RDBMS and search engine context
Substantial experience using Docker for development; some experience using Docker and/or Kubernetes for CI/CD and production deployment
Substantial experience implementing unit, functional, and integration tests for a web service
Some experience with APM tools (DataDog, NewRelic, etc.) for application monitoring and performance tuning.
We do not require any specific university degree, certifications, or work history for this position.
Candidates will be evaluated on their work experience, development portfolio, and assessment results from an assessment that we will provide during the interview process.
Team
In this role, you will be part of a remote scrum team with members located potentially anywhere in the world. We communicate through Google Chat, and track our activities through YouTrack and xWiki.
You should be comfortable working in an agile scrum framework, be comfortable with estimating and committing to deliverables, and enjoy working with other team members to ensure that the team's objectives and commitments are well-considered, well-defined, and delivered on time.
Waiting for your CV!