Staff Software Engineer (Core team)
Remote - UK
Remote - EU
Remote - Europe
Remote - Netherlands
Remote - Germany
Remote - Greece
Remote - Portugal
Remote - Spain
Remote - Poland
Remote - Bulgaria
Remote - Serbia
Remote - Czech Republic
Remote - Sweden
Full Time
Senior
This job has expired. The employer might not be hiring anymore.
Here at Workato, we are a team moved by innovation — a passion to create the best possible way and the drive to continue to make it better. We also believe in the power of our team, knowing that we only succeed if we all succeed together. Our team uses seven operating principles to help us make better decisions, work as a team, and have fun.
We are looking for an exceptional Senior Backend Developer (Ruby/GO) to join our growing Engine team. The Engine team develops and maintains most things related to the Workato Recipe runtime. Everything related to recipe execution: DSL, pulling events, processing webhooks, executing jobs. There are various aspects to it: performance, scaling, storage, durability, atomicity, concurrency guarantees, data protection, and encryption.
In this role, you will also be responsible for:
- Built/extended/troubleshot/fixed complex heterogeneous GOlang and Ruby applications, as well as small self-contained GOlang microservices.
- Improve execution engine of custom third-party code (Ruby DSL, isolation, performance, new features).
- Write well-designed, testable, efficient code in Ruby and GOlang.
- Integration of data storage solutions Postgres/S3/DynamoDB/Kafka/ClickHouse etc.
- Contribute to all phases of the development lifecycle.
- Provide code reviews to your teammates.
- Provide technical leadership. Work with other teams on shared projects.
- Evaluate and propose improvements to existing systems.
- Identify bottlenecks and bugs, and devise solutions to these problems.
- Help maintain code quality, organization, and automation.
- We always explore new technologies, and working with Rust and Wasm can be foreseen.
Requirements
- Strong experience in building scalable distributed backend applications (7+ years).
- Excellent understanding of distributed systems patterns and algorithms.
- Great understanding of all building blocks of large web applications: databases, load balancers, application servers, message brokers, caching, monitoring, etc.
- Excellent understanding of network protocols and stacks.
- Excellent understanding of DB technologies: classic databases and modern NoSQL.
- Knowledge of all common basic data structures and algorithms, and how they are used, is a must.
- Multilingual programming experience: our code base is primarily in Ruby, with a trend to migrate to GOlang and Rust. At least two languages are required.
- At least basic understanding of cloud deployments (k8s, Terraform, ArgoCD)
- Experience of working with public cloud infrastructure providers(AWS/Azure/Google Cloud).
- Excellent debugging, analytical, problem-solving, and social skills.
- BS/MS degree in Computer Science, Engineering, or a related subject, 7+ years of industry experience.
Optional
- Background in GOlang, Rust, WASM, Kotlin/Multiplatform.
- Background in network programming.
- Background in application, data security.
- Deep knowledge of physical DB design.
- Experience working with Docker and other isolation technologies.
- Experience in related fields (DevOps, ML, DBA, Enterprise applications, etc).
- Experience in building/deploying data processing pipelines is a plus.
- Experience of working with third-party REST APIs at scale (request throttling, batch processing, etc).
Soft Skills / Personal Characteristics
- Ability to technically lead projects. Work with requirements, cost analysis.
- Readiness to work remotely as an FTE with teams distributed across the world and time zones.