Senior C++ Qt/QML Developer for blockchain app

0
200

About Status

Status is an organization 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 permission lessly 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

We are happy to pay in either 100% fiat or any mix of fiat and/or crypto. For more information regarding benefits at Status: https://people-ops.status.im/tag/perks/

Hiring process

The hiring process for this role is usually as follows (sometimes adapted):

  • Introductory conversation – People Ops team
  • 2-3 Technical Interviews with Desktop Qt/QML Developers
  • Team lead interview – Iuri, Desktop Team Lead
  • In some instances, a talk with John, Product Strategy Lead
  • 'Meet the Desktop team' interviews with 3-4 Desktop Contributors (30-40m each)

POSTAVI ODGOVOR

Please enter your comment!
Please enter your name here