Senior Software Engineer

Hace 2 días

Barcelona, Cataluña, España Workato Jornada completa
Overview

In this role you will help shape the Workato Recipe runtime by designing scalable backend systems in Go and modernizing runtime components. You’ll work on high-concurrency, performance-critical infrastructure that powers event-driven integrations and third-party code execution. You will collaborate with cross-functional teams to improve reliability, scalability, and observability while owning initiatives end-to-end from design to production support. This position fits within the Engine team, contributing to a mission of enterprise-grade automation at scale.

Responsabilidades
  • Design and implement distributed backend systems in Go with attention to performance and memory behavior
  • Develop runtime components for high concurrency and throughput
  • Leverage Go internals to boost efficiency (scheduler, GC)
  • Design and optimize concurrent workflows using goroutines, channels, and context
  • Analyze memory usage and data structures for performance-critical paths
  • Enhance execution engine for custom third-party code (isolation, extensions)
  • Modernize runtime components emphasizing modularity and observability
  • Improve trigger configuration and execution across webhooks and polling
  • Integrate and optimize data storage solutions (Postgres, S3, DynamoDB, Kafka, ClickHouse)
  • Identify bottlenecks, race conditions, and deadlocks in distributed systems
  • Own initiatives end-to-end from design to rollout and production support
  • Conduct code reviews focused on correctness and performance
Requisitos principales
  • 7+ years of building scalable distributed backend applications
  • Strong understanding of web application building blocks (databases, load balancers, app servers, messaging, caching, monitoring)
  • Good understanding of network protocols
  • Knowledge of classic and NoSQL DB technologies
  • Solid foundations in data structures and algorithms
  • Multilingual programming experience (Ruby primarily, moving to Go and Rust)
  • BS/MS degree in Computer Science, Engineering or related field, 7+ years of experience
  • Willingness to work remotely with distributed teams
  • Excellent debugging, analytical and problem-solving abilities
  • Strong social skills for collaboration and code reviews
  • Go backend development
  • Concurrency and parallelism (goroutines, channels, synchronization, context)
  • Go internals (scheduler, memory model, garbage collection)
  • Memory optimization and data structure tuning