Senior Application Engineer (Services) - remote

Float
Posted 1 year ago
We Work Remotely
Float is the world’s leading software for teams to plan their time and, behind it, is a world-class team looking for an experienced senior application engineer to join us. From the USA to the UK, Canada to South Africa—our Engineering, Product, Marketing, Insights, and Customer Success teams work asynchronously, helping brands such as Airbnb, Buzzfeed, and Ogilvy plan and manage their time better. Float is self-funded, profitable, and growing. If you’re aligned with our values, and are looking to join a team that’s passionate about helping others work and live more productively, we want to hear from you. Here are a few tips from our CEO to make sure your resume stands out from the crowd.


Why We’re Hiring For This Role

We’re looking for an experienced engineer to join the Float team to help expand and maintain our back-end services as our Engineering team and customer base continues to grow.

To meet the increasing demands of our customer base and larger customers, we are considering the next evolution of our back-end systems: you’ll be on the front line in these discussions, evaluating any necessary trade-offs and figuring out how our current systems can adapt to the new architecture we adopt.

Float’s Services Team Lead, Christian, explains the important role you will play within our Engineering team. Watch this video.You’ll work asynchronously with a bright, dedicated team across the globe, with a strong focus on taking complex problems and creating solutions that feel simple and intuitive for our customers.


What You’ll Be Responsible For

You'll join a small squad of engineers taking ownership of both our core components as well as value-added services - those that provide the stickiness that allow customers to use Float to the fullest extent and meld well with other existing processes and systems.

As a Senior Engineer within our Applications Division, you’ll develop and maintain features that help power over 80,000 customers using Float. Your work will ensure the reliability of these services, implementing new features to take them to the next level as well;you will also be involved in the discussions and practicalities of scaling our back-end systems to support an ever-growing customer base.

You’ll be designing and implementing services to support the development of new features across our web, mobile, and desktop app products -- for example, surfacing aggregate data in a performant way or initiating scheduled jobs.

Our modern SaaS platform integrates with several third-party business tools, and you will be responsible for maintaining and building out these integrations with the help of REST and GraphQL APIs from Google, Microsoft, Jira, Linear, and more.

In the immediate future, you’ll become familiar with the systems and services in this area by helping to investigate and resolve incoming customer issues. The aim is to have both a satisfied customer and ensure no future customer feels the same pain. You’ll likely dig deep into the code while cleaning up data issues in order to wow our customers and put a smile on their faces.

Longer term, you’ll be a key part of our future architecture changes over the coming quarters as we shift to a more scalable framework to allow us to continue to grow and to support our customers as they continue to grow themselves. There will be opportunity to modify and re-write many of our existing services to make them both more performant and also more modular so that they are all able to communicate effectively with each other while still evolving independently.


What You’ll Need To Be Successful

You’ll come to Float with a strong command of Node.js and a proven track record of successfully developing, maintaining, and implementing production services using JavaScript or TypeScript.

You’ll certainly be familiar with messaging architectures and likely have used RabbitMQ &Redis or similar to support scalable, reliable message delivery. We would expect the successful candidate to display most, if not all, of the following:
  • Node.js proficiency in a production environment
  • A strong command of MySQL and MongoDB
  • Experience with microservices-based architecture
  • Experience with serverless architecture (Cloud Run and App Engine in particular)
  • Experience developing integrations with third-party APIs
  • Proven experience shipping production-ready services for business or consumer-facing applications
It would be a bonus if you have:
  • Expertise in other database technologies or search and analytics engines such as Lucene or similar
  • Experience developing data processing pipelines (Flink, BigQuery, Cloud PubSub, PubSub Lite)
  • Experience with event streaming systems (Kafka and similar)
You should be comfortable working independently and autonomously, while recognizing the limits of your skills and knowledge. An above-average ability to communicate clearly and with clarity particularly in written communication is vital to success in this role -- since our Engineering team and beyond are spread across the world and we rely on proactive and accurate written documentation to maintain our lines of communication.

Being product-focused and also customer-focused, you care about the end-user experience and aren’t afraid to speak up to fellow engineers as well as designers and product managers about areas we could do better. You balance that with pragmatism, understanding that sometimes it is better to have a great solution now than a perfect solution at some unknown time in the future.

If you have experience with the likes of Kafka or similar stream processing solution, we’d love to hear from you in particular. Our data and services feel very amenable to this kind of approach and it is one we are in the process of evaluating for future adoption.

As a fully remote team, we’re looking for someone who can excel with asynchronous communication as the default, which means you have previous remote experience and are comfortable using tools like Slack, Loom, and Linear to communicate as needed. Don’t worry—you will have significant deep work time since we have very few meetings.


Why Join Us

We’re a global company with a diverse team of folks from all over the world who share a common belief in living our best work life. That includes a flexible asynchronous policy that allows you to work whenever you work best, minimal meetings, annual team meetups, and perks and benefits that support your personal health and well-being. You can learn more about our full perks &benefits in our Float Handbook.

We understand that you probably want to learn a bit more about us as well, so here are some resources to get a sense of who we are and how we work:
Pay for this role is US $147,816 (Level 3). Here’s a blog post with more information on how we determine our salaries.


Note: Industry research shows that women and those in traditionally underrepresented groups generally don’t apply to jobs unless they check all the boxes for the role. If you feel strongly that you have what it takes for this role but don’t check 100% of the boxes—that’s okay—we encourage you to apply anyway and highlight what you can bring to the table.


Hiring Process For This Role

You’ll find a lot of useful information about our interview process and what it’s like to join our global team on the Float careers page. The hiring process for this role is a five-step process that looks like this:
  • Initial First Meet: If your application is shortlisted, you will have a 15-minute meeting with Romina from Talent. This meeting gives us an opportunity to learn more about your experience and also allows you to ask any questions you have about the role.
  • Technical Assignment: If you move forward, you will be invited to complete a technical assignment for the engineering team to review.
  • Team Interview: You’ll meet with Christian, Services Team Lead, and Roberto, Staff Engineer, for a 45-minute interview that will deep dive into your technical assignment and related skills and experience.
  • Manager Interview: We take a very collaborative approach to hiring, so you’ll meet with Colin, Director of Engineering, and Lars, CTO at Float, for a 45-minute interview.
  • Founder Interview: As the final step in the process, you’ll meet with Glenn, Float’s CEO, for a 30-minute interview.
Our hiring process takes an average of 29 days from the first interview to a job offer (based on YTD 2022 data). Our Talent team will be in touch each step of the way to ensure that you are well informed and aware of the next step in the process.

Unfortunately, due to the high volume of applications, we can only contact candidates who have been shortlisted for the role. If you do not hear from us within 14 days of submitting your application, we encourage you to apply for another role in the future.