About Status
Status is building the tools and infrastructure for the advancement of a secure, private, and open web3.
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.
As an organization, Status seeks to push the web3 ecosystem forward through research, creation of developer tools, and support of the open source community.
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. But Status is also building foundational infrastructure for the whole Ethereum ecosystem, including the Nimbus ETH 1.0 and 2.0 clients, the Keycard hardware wallet, and the Waku messaging protocol (a continuation of Whisper).
As a team, Status has been completely distributed since inception. Our team is currently 150+ core contributors strong, and welcomes a growing number of community members from all walks of life, scattered all around the globe.
We care deeply about open source, 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.
The role:
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.
The desktop team is looking for a Test Automation Engineer to help us create a consumer level quality application. In this role you will be working closely with designers to fully understand the design vision for the product, and working with devs to create automated functional tests using the Squish framework (end to end and regression tests). The desktop team is spread out in North America, Europe and Australia, with crossover work hours being the European timezone afternoon on Monday, Wednesday and Friday. Work is async using Status, Google Meet and Github, typically in Scrum Sprints.
Responsibilities:
- Help create test automation framework from scratch (suggested: Squish framework), thus select test design approach, find and suggest remote services for installing apps, integrating with CI/CD process, GitHub and TMS
- Be involved in test methodologies and their corresponding tools
- Participate in the prioritization of the backlog of bugs/feature
- Estimate, prioritize, plan your testing activities
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]
- 5+ years of test engineering experience on products with a GUI
- 4+ years in test automation
- Prior experience of Froglogic Squish
- Strong knowledge of Python for automation
- Strong understanding of design patterns in test automation
- Self-motivation, a strong sense of ownership and result oriented autonomous worker
- A strong alignment to our principles: https://status.im/about/#our-principle
Bonus points if:
- Prior experience in testing Qt/QML applications
- Experience in testing desktop applications for Windows/OSx/Linux
- Experience with open source development workflow (including GitHub)
- You show a strong interest in blockchain and have a good understanding of Ethereum
- Have worked in a distributed environment that values asynchronous communication
- Experience working in an open-source organization
Hiring process:
- Introductory conversation with People Ops team member
- Interview with Desktop Test Lead
- Paid take home task (circa 2h to 4h)
- Interview with Automation Engineer
- Interview Iuri, Desktop Team Lead
[The steps may change along the way if we see it makes sense to adapt the interview stages, so please consider the above as a guideline]