Full Stack Engineer - Developer Tools at Balena
As a productOS team member, your mission will be to continuously improve the experience of balenistas by reducing the friction they face when developing the balena ecosystem.
- Strong technical background with a focus on backend development and/or infrastructure
- Experience writing high-quality, production-ready code and debugging complex issues
- Knowledge of modern engineering practices, such as optimizing for observability, performance, security, and scalability
- Ability to manage ambiguity, make critical trade-off decisions, and push projects to completion
- Continuous improvement mindset, and desire to make self and others more effective
- Excellent verbal and written communication skills, and fluency in English
- Firm grasp of technologies like Typescript, Node.js, PostgreSQL, Docker, and Kubernetes
- Strong understanding of networking concepts (load balancers, routers, etc.)
- Experience developing internal tooling
- Familiarity with IoT, embedded systems, developer tools, or the balena platform as a user/contributor
- Contributions to OSS projects and community involvement
- Background in leading projects and working across functions to build robust products
Building developer tools at balena
A few years back, we started building a platform codenamed, productOS, to enable the balena team to build products at scale, maximizing effectiveness and reducing busy work. The backbone of productOS is a cutting-edge API engine called Jellyfish, built using JSON Schema, NodeJS, and Postgres.
As a productOS team member, your mission will be to continuously improve the experience of balenistas by reducing the friction they face when developing the balena ecosystem. You will act as a product visionary and full-stack engineer at the same time — proactively identifying opportunities and seeing new features throughout the entire lifecycle. You will own product outcomes, not feature requests, and be empowered to develop novel solutions expanding the capabilities of productOS.
- Identify user needs and patterns in feedback, understanding the root causes of friction
- Help brainstorm and design long-term solutions, rather than short-term fixes
- Own the implementation of new features and product improvements — scoping, design, development, testing, deployment, and maintenance
- Contribute to documentation and user-facing guides for your implementations
- Be a source of advice for peers on support, sharing your expertise, and educating others
- Actively invest back in our technology, libraries, and frameworks
Make sure to let us know if any of these items apply to you!