Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Senior Developer at Quave - Fully Remote - $4,000 #17

Open
filipenevola opened this issue Feb 17, 2025 · 0 comments
Open

Senior Developer at Quave - Fully Remote - $4,000 #17

filipenevola opened this issue Feb 17, 2025 · 0 comments

Comments

@filipenevola
Copy link
Contributor

Title: Senior Developer at Quave - Fully Remote - $4,000

We're hiring a Senior Developer to join Quave and help our team in developing client projects.

This is a fully remote position offering $4,000 per month, suitable for candidates in time zones from Eastern (UTC-5) to Central European (UTC+1).


TL;DR:

We only hire full stack developers. If you can't code using MongoDB, Node.js and React, this job isn't for you. Meteor isn't a deal-breaker as it's based on Node.js and JavaScript. We'll guide you in learning Meteor packages and problem-solving approaches later if necessary.

You should be able to quickly build simple apps with MongoDB, Node.js, and React. We're looking for highly productive coders who can deliver working code much faster than average.

You must be fluent in Portuguese and comfortable with English. While you'll have 6 months to improve your English communication skills, you'll eventually need to handle English-speaking clients independently.

Also, you should be able to produce great code much faster than average. Plus, you should shine in environments where the current codebase is not good or even in different languages and frameworks that you are not familiar with.

You should be productive with AI tools for developers like Cursor, Claude and more. We don't work coding like in 2022, we believe in the power of AI to make us more productive and help us deliver great results because we know how to use the tools to achieve that. We use our intelligence to extract the most of AI tools.

If this doesn't describe you, please don't apply.

Our senior developers spend most of their time coding while helping the team deliver great results.

If you are this fast coder, keep reading!


Keep reading, in this issue we will cover:

  1. What You'll Do
  2. Who You Are
  3. Why Work With Us
  4. Responsibilities
  5. Pay and Benefits
  6. How to Apply
  7. Timeline
  8. Process

What you'll do

As part of our small multidisciplinary team, you'll have various responsibilities:

  • Build new features and code extensively. This is a hands-on position, with 80% or more of your time spent coding or reviewing code.
  • Fix bugs and implement small adjustments to existing features.
  • Review code to ensure quality, including performance and documentation.
  • Maintain CI workflows and automations for running tests and building releases.
  • Estimate smartly to decide project allocation and deadlines.
  • Work on multiple projects simultaneously, if necessary.

Recent project examples:

  • A New Web and Mobile App: Develop an app to assist vanlife travelers and road trippers, providing a platform for sharing experiences and recommendations. Leveraging AI, using LLMs and our proprietary database to deliver natural, human-like responses.
  • Refactor a big feature: Refactor the way forms and complex data were handled in order to be able to reuse components in new and old features including the model layer.
  • New complex feature: Implement a new feature to track async operations in Node.js to be able to monitor and debug live in an APM.
  • New VSCode Extension: Implement a new VSCode extension to track changes in a yaml file and draw the corresponding diagram and vice-versa.
  • Make old UI Responsive: Change the foundation definitions of styles in several pages to make sure all work in all devices and screen sizes.
  • Improve Post feature: Enhance the newsletter post form by integrating AI to review text and suggest topics and headlines for posts.
  • Migration to new version: Migrate a project from Meteor 1.8 to 2.15 including all dependencies and tests.
  • Apply changes in async code: Change all the code that needs to use Promises instead of Fibers API for accessing Database and other external calls.
  • Urgent performance analysis: Help client in understanding performance issues that are causing a lot of users to leave the app or operations to be stuck forever.
  • Analyze and fix critical issues: Help client in a war room suffering to keep the app running and fix the issues that are causing the problems suggesting approaches live with the clients' team.
  • Create bridges: Create a bridge from scratch between Native iOS and Android SDKs to React Native apps.
  • Fix IoT communication: Analyze and fix IoT communication issues with backend systems.
  • Reduce costs: Analyze and reduce costs of a project due to high usage of database due to bad performance of GraphQL queries.
  • OSS packages: Create new packages to speed up client work when integrating Microsoft Active Directory authentication with web apps.
  • OSS issues: Release a new version of our eslint plugin to work well with different projects setups.
  • Generate images: Generate image based on other images using opensource AI models to fine tune them on very specific features of the face.
  • Builders: Create a new builder plugin capable of handling Webpack federation in Meteor apps.
  • A new feature for a client’s app: Calculate freight costs using Uber's API and display it to the user integrated with a Map widget previously delivered.
  • A bug fix: Fix a bug that was causing the app to crash when the user tried to upload a profile picture larger than 5mbs.
  • A small adjustment: Change the positions and design of a portal where members of an organization see relevant info such as next events and plan options following a Figma design as close as possible.

Which Languages You Need

  • You speak Portuguese. You must be fluent in Portuguese for this role.
  • You understand English. You must be comfortable listening, reading and writing in English.

For the first 6 months, you won't need to handle calls with English-speaking clients alone. After that, you'll need to communicate with them in all formats. Only apply if you're committed to improving your English skills.

Who you are

We're seeking someone with strong Computer Science skills and great code velocity who shares our values:

  • You love people. You enjoy working with others, having fun, telling jokes, and always being ready with your camera for live calls, no matter where you are.
  • You like to pair on problems. You get energy from working directly with other people in code.
  • You’re fanatical about long-term maintenance — almost to a fault. It’s important to you that every variable name is just right, code comments are free of grammatical errors, and tests are named consistently.
  • You miss when writing software used to be fast, and you love writing code that shows how fast we can deliver useful features.
  • You are paranoic about being productivity in everything you do — you are always looking for ways to improve your productivity and the productivity of the team without compromising quality. "Quave stands quality (qua) and velocity (ve)!"
  • You’re energized by unfamiliar territory. You enjoy the challenge of digging in to a codebase you’ve never seen before to try and troubleshoot a complex problem.
  • You’re a great writer. Whether it’s a project status update, documentation, a pull request description, you think about the reader and care about communicating clearly. We believe poor writing is a sign of poor thinking.
  • You're fluent in algorithms. You've implemented all the algorithms and data structures from Cormen's book, and you can easily solve logic puzzles or mid-level coding challenges.
  • You're addicted to learn. You’re always looking for ways to improve your skills, and you’re excited to learn new things. Well-versed and curious about emerging AI solutions.
  • You’re good at breaking down tasks. You’ve got good instincts for what to work on first, what’s safe to save for later, and how to get to a working demo as fast as possible.
  • You love great design. You might not consider yourself a designer, but you kinda wish you could wave a magic wand and become one to deliver delightful web apps and apps.
  • You are obsessed with results. You are always trying to deliver the highest quality for optimal outcomes, aligned with clients objectives. You prioritize the final product over the technology used, viewing technology as a means to an end, not the end itself. "Quave stands for quality (qua) and velocity (ve)!"

Technical expertise must include:

  • Javascript — most of our projects are in pure Javascript.
  • Node.js — a good amount of the work we do is based on Node.js environments, especially Meteor.js.
  • React — Most of our UI code is written in React, using modern patterns like hooks and simple components. (This refers specifically to React for UIs, not to the recent hype around old ideas).
  • Tailwind CSS — of course, we use Tailwind CSS. While we like to challenge the status quo, we love Tailwind.
  • MongoDB — we don't use it in all the projects but it is usually our go-to database.
  • Docker — we use Docker in some way almost in every project.
  • IDEs — we use JetBrains IDEs in many cases but you can use whatever you want, but you need ot use the IDE to produce code as fast as possible, the IDE can't be a limitation, it should be a tool to boost you.
  • Figma — you will consume Designs from Figma.

But that is not all, as you can imagine we have clients with projects of different flavors, so we are looking for someone that can adapt to new as well:

  • Clouds — we have many projects in our own cloud quave.cloud based on Kubernetes. And we also use AWS quite a lot, Azure and a little bit of GCP.
  • DBs — we have projects using PostgreSQL, MySQL, SQL Server, Redis, etc.
  • GraphQL — we use GraphQL in some projects.
  • CI/CD — we primarily use GitHub Actions, but we also work with other tools when necessary.
  • React Native — we have a few projects in React Native.
  • iOS — we have a few projects in Swift.
  • Android — we have a few projects in Java/Kotlin.
  • PHP — we have a few projects in PHP and Laravel.
  • Python — we have a few projects in Python.
  • .NET/C# — we have a few projects in .NET/C#.
  • Go — we have a few projects in Go.

Why work with us

  • We ship — our clients choose us not just because we are great in what we do (yes, we are), but because we consistently deliver high-quality results on time.
  • Our work is impactful — in many cases we are the whole technical team of the client, so the work we do directly impacts on their success.
  • We're Small, on Purpose — We aim to keep our company small and simple to minimize distractions and complexities.
  • We’re fully remote — work from wherever you want. We collaborate in real-time every day over Slack and Google Meet video calls, but we all work from the comfort of our own homes.
  • We’re independent and profitable — we don’t have investors or a board to justify our decisions to, and aren’t burning through cash trying to make the business successful.
  • We care about doing great work — we are a profitable company because our clients love our work. You don't need permission to do your best work in your way.
  • We’re not trying to make it big — we say no to great opportunities if there’s any chance it would make our days less fun. We care about making enough money to keep doing what we enjoy, not doing whatever it takes to make as much money as possible.
  • We move fast — we believe in changing. We keep our processes at minimum, and we’re not afraid to change our minds if we think we can do something better.

Responsibilities

  • Work (shocking, right? But these are strange times)
  • Continuously learn current and new technologies aligned with company projects and future goals
  • Work hard on Development Process monthly plans
  • Arrive on time for all meetings
  • Commit to deadlines and communicate risks early
  • Keep your LinkedIn profile public and updated with your current Quave position
  • Work from a location with reliable fast internet and power
  • Deliver tasks that are fully functional and don't disrupt other parts

Pay and Benefits

The compensation for this position is the same regardless of location.

This is a full-time position, requiring 40 hours of work per week.

  • Work remotely: work from wherever you’re most productive, no commuting to an office.
  • Flexible hours: work when you’re most productive and be there for the people you love.

We also offer:

  • 22 days paid time off a year: we don't approve your time off requests, you are an adult and you know how to manage your time.
  • Quartely bonus: we pay a bonus when we achieve our profit goals. This bonus is weighted based on past months of work. Read more.
  • AI Allowance: 20 USD/month on top of the monthly compensation to be spent on AI productivity tools.

We’re a very small distributed team, so we work together as independent contractors. That means we cannot offer certain benefits like health insurance or a retirement savings plan.

You should only apply for this position if you are comfortable being self-employed from the perspective of your local tax authority.

How to apply

Read the full README of our code-challenge repository.

Follow the instructions there to submit your challenge.

You should also write a cover letter explaining why you're a great fit and what you'll bring to Quave. This is one of the fields in the form you will deliver your challenge.

Timeline

  • Applications due: March 7th
  • Next steps (if selected): by March 14th
  • Offer (if approved): by March 21st

If you don't hear from us by March 14th, your application wasn't successful. We review all applications but we don't have enough bandwidth to answer to all as we receive at least 200 applications for each position we announce.

Process

Our hiring process consists of a few steps, which may be combined or compressed as appropriate, we always try to move as fast as possible:

  1. Code challenge: You will spend between 2-4 hours probably, but you can take as long as you can;
  2. In-depth interview: Discuss code challenge;
  3. Pair programming: 1-2 hours session with a team dev, our goal here is to simulate our work environment and measure your quality and velocity;
  4. Talk to a partner: 30 mins session with a partner;

We aim to streamline this process when possible, potentially combining steps or conducting multiple stages in a single session. Our goal is to be efficient while thoroughly evaluating candidates.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant