Senior Programming Language Engineer
Job Description
We're looking for a creative Senior Programming Language Engineer to partner in the design and implementation of Cadence, a new smart contract programming language being introduced as part of the Flow blockchain. Cadence is designed around “resource-oriented programming”, a new programming model that pairs linear types with object capabilities to create a secure and declarative model for digital ownership.
You will help shape the future of Cadence and will be involved with all aspects of the language, taking language features from conception to implementation. You will be responsible for understanding the interaction between the language implementation, the on-chain execution environment, and the core protocol, helping with a variety of tools to facilitate development in this exciting new programming language.
A little about us:
Flow is the blockchain for builders. Created by Dapper Labs, the team behind CryptoKitties, Flow will be the foundation for the next generation of decentralized applications with notable partners including Warner Music Group, Ubisoft, and Animoca.
The Flow team is a humble and curious bunch of builders and scientists who share a passion for blockchain technology and the new kinds of software it enables. Our people are our greatest strength: our diverse team flourishes in an environment where personal autonomy and professional growth are encouraged. We value our culture above else; regardless of where you came from or what you studied, your role here will necessitate both a high level of creativity and strategic thinking on complex issues.
A little about you:
- You have practical experience with the design and implementation of compilers including parsing, semantic analysis, type checking, optimization, and code generation.
- You have a diverse exposure to different programming languages and programming paradigms.
- You are capable of applying your skills across a variety of use cases; inflexible specialists need not apply.
- You understand the power of planning, but you are comfortable improvising and can prioritize the most impactful tasks on the fly.
- You are adamant about test coverage.
- You have experience with one or more general purpose programming languages including but not limited to: Go, Rust, C/C++, Swift, Python.
Bonus points if you have the following:
- Experience with blockchain technologies.
- Familiar with at least one of the functional programming languages: Haskell, OCaml, Clojure, Lisp, etc.
- Experience with smart contract languages, e.g. Solidity.
- Experience working on open-source software projects.
About Flow.com:
Flow is a remote-first team of seasoned technologists dedicated to our mission of mainstream Web3 adoption. Founded in Vancouver, Canada, Flow’s team is now spread primarily across the US and Canada – with small presences in Europe, Asia, and the Middle East. Less than 6 months from now, Flow delivers Crescendo, its biggest technical upgrade since launching the network. Included in the Crescendo release is Cadence 1.0, a major upgrade of the Cadence programming language which enables fully immutable smart contracts on Flow; as well as full EVM equivalence, allowing Flow to host EVM-based smart contracts, platforms, tooling, and utilities natively and fully composable with the Cadence environments. With Crescendo, Flow will be as easy to deploy onto as any EVM-based Layer 2, while preserving the full capabilities of the rest of the protocol. Crescendo upgrade will catalyze a massive improvement in liquidity on Flow including on- and off-ramps as well as a native DeFi ecosystem that serves as a liquidity backbone for the entire network.
Company Overview
Today, Flow is home to a thriving ecosystem of builders from Web3 trailblazers, top brands, development studios, venture-backed startups, crypto leaders and innovators. For more information, visit www.flow.com.
What makes Flow different from other smart contract blockchain alternatives?
Upgradable Smart Contracts
Securely and transparently patch bugs and upgrade pre-specified parts of a smart contract.
Built in Logging Support
A simple feature that will pay dividends in software quality and development speed.
Cadence
A new easy-to-learn programming language designed for dapps and digital assets.
JOB LOCATION
JOB TYPE
JOB INDUSTRY
COMPANY NAME