Senior C++ Qt/QML developer for blockchain app

Status | Private, Secure Communication

About

Status is building the tools and infrastructure for the advancement of a secure, private, and open web3. As a product, Status is an open source, Ethereum-based app that gives users the power to chat, transact, and access a revolutionary world of DApps on the decentralized web. With the high level goals of preserving the right to privacy, mitigating the risk of censorship, and promoting economic trade in a transparent, open manner, Status is building a community where anyone is welcome to join and contribute.

Overview

Global

ethstatus

Job Description

About Status

Status is an organisation that seeks to accelerate consumer adoption of the web3 ecosystem forward through products, research, the creation of developer tools, and support of the open source community. Our core product is an Ethereum blockchain based app for mobile and desktop platforms that enables communities to permissionlessly create 100% decentralized group chat spaces, and allows users to message, make payments and browse and transact on the decentralized web. Status also builds foundational infrastructure for the Ethereum ecosystem as a whole including the Nimbus Ethereum client, the Keycard hardware wallet, and the Waku messaging protocol which is a continuation of Whisper. Everything Status creates is built in the open and released under permissive open source licenses.

We’re a fully remote team made up of ~100 core contributors and a growing number of community members scattered around the globe. We care deeply about open source software, and our organizational structure has minimal hierarchy and no fixed work hours. We believe in working with a high degree of autonomy while supporting the organization’s priorities.

After a pause during which the Status team focused on our mobile application, the development of Status Desktop was restarted in 2020 with a clean sheet QT / QML UI codebase.

Status Desktop is currently in beta for Mac, Windows and Linux platforms. Current product focus is on the privacy-centric messenger and group chat functionality, and we’ve just kicked off development of our new ‘multi-chain from the ground up’ crypto Wallet. ÐApp browser and blockchain node functionality will follow next. Status desktop is currently built using Nim & QT for the frontend, and it shares a common backend with Status mobile that is written in Go. We are currently in the middle of a large refactor of our architecture. This refactor includes transitioning the QT front end from Nim to C++, moving all business logic to our status-go backend, and upgrading from QT5.14.2 to QT6.2. As we work in the open and are fully open source you can get a better idea of who we are and the work we are doing by browsing our team wiki here and taking a look at our Status Desktop, Status Desktop QML component library and Status Desktop and Mobile Go backend GitHub repos. You can find more information about our desktop effort in this blog post.

Status is looking for multiple senior experienced C++/QML UI devs to join our growing desktop dev team and to work with us to create a permissionless, decentralized, censorship proof group chat platform. Role responsibilities include developing new features, creating and enhancing components in our QML UI toolkit component library, advising and assisting other members of the desktop dev team with solving challenging QML UI development problems, and perhaps working on the Go backend if this is something you would enjoy. As a team we try to match task assignment with the individual interests and passions of our team members, so there is a high degree of flexibility with regards to what you would be working on. If you are a passionate C++/QML expert who knows all the ins and outs of C++ and QT/QML UI development this could be an ideal role for you.

The desktop team is spread between Europe and North America with crossover work hours being the European timezone afternoon on Monday, Wednesday and Friday. Ideally you will be located in a timezone between UTC -8 and UTC +3 e.g. anywhere in-between Panama and Moscow. Work is async using Status, Google Meet and Github, typically in Scrum Sprints.
Key Responsibilities
Build new features, enhance existing functionality and fix issues in the Status Desktop application.
Help develop and maintain Status’s QML UI component library (primarily used by the Status Desktop product)
Advise and assist the other developers in the Desktop team as needed to help solve the hardest QML UI development challenges
Contribute to C++ and Go codebases (and help with transitioning the codebase from Nim to C++ if you join us prior to this transition being completed), but don’t worry if you don’t have any prior Go or Nim experience.
Be one of our resident experts for everything related to C++ and Qt/QML UI development.
You ideally will have

Don’t worry if you don’t meet all of these criteria, we’d still love to hear from you anyway if you think you’d be a great fit for this role!
Expert level experience implementing UIs using Qt/QML/C++
A strong ability to think about components and modules as they relate to other components as part of a larger system
A very strong attention to detail and the willingness to deliver pixel perfect UI according to the designs.
Provide feedback and product ideas to the designers as needed
Experience with multithreading / concurrency
Good communication skills in English
A strong alignment to our principles: https://status.im/about/#our-principles We are a passion driven project on a mission to build tools that protect and enable free speech.
Bonus points if you have
Experience working in an open source organization
A strong interest in blockchain technology and have a good understanding of Ethereum.
Worked in a remote distributed environment that values asynchronous communication
Knowledge of Go and/or Nim and/or Solidity is a plus
Experience with using QT/QML to develop cross platform (Windows, OSX, Linux) desktop applications and mobile applications (iOS, Android) is a plus
Prior experience with using Squish for functional testing QT apps
Experience implementing openGL rendering in a QML context
Any background or experience with cryptography and/or security
Compensation

Status offers above-average compensation, payable in fiat and/or crypto

Hiring process

The hiring process for this role will be:
Introductory conversation – People Ops team
Vision alignment Interview – John, Product Strategy Lead
Team lead interview – Iuri, Desktop Team Lead
Technical interviews – Sale and Alexandra, Desktop Qt/QML Developers
Tech and culture alignment Interview – Andrea, Mobile Team Lead
‘Meet the Desktop team’ interviews with Anthony, Pascal and Khushboo,

Questions about this role?
Feel free to get in touch, we are more than happy to discuss the role in more detail.

Apply for job

To apply for this job please visit jobs.status.im.

×

Add New Company