Senior Software Engineer, Fullstack
GetFrank, PBC · Remote
At GetFrank.com, we build software for unionizing workers and labor organizations to manage and grow their organizing efforts. We are intently mission-driven to provide products that empower workers to have a voice in collection action to improve their workplace. We are proud that our early Partners are utilizing Frank to organize workers across restaurants, hospitals, museums, building maintenance, and construction.
We're deeply passionate about using technology to expand access to organizing. Our software suite features digital tools Organizers and workers use to do the work they’re already doing, but with more efficiency and with solutions built exclusively for labor. We aren’t disrupting labor organizing; we are building core infrastructure tools based on tried and true principles of building worker power.
To be a fit at Frank, you must:
- Be Frank: We are honest, respectful, and direct with each other and with workers. This is core to how we communicate internally and within our product.
- Be on Purpose: Everything we do is rooted in our mission. Our decisions and actions are intentional and must serve our greater purpose of empowering workers.
- Be a Worker: We are outcome-oriented and dedicated to our craft of building tools for workers. We get our hands dirty, pitch in without being asked, and stay focused on the task at hand.
- Be a Steward: We have a passion for service and empowering others. We listen. We seek to facilitate, not dictate, better outcomes for workers.
- Be an excellent communicator. We have a distributed team at Frank, and operate with high levels of autonomy, trust, and ownership.
- Be experimental. We’re building something new, and that requires embracing many unknowns. You won’t have a multi-year roadmap with exacting specs - everyone at Frank is expected to contribute new ideas and approaches.
- Operate with high integrity, enthusiasm, and good vibes.
- Be adept at working in a fast-paced and ever-changing environment, and willing to wear many hats.
- Be well-versed in utilizing modern tools and tech to increase efficiency.
- Be technical. Not everyone will be writing code daily, but we will solve problems with product and processes (and will be deeply thoughtful before hiring more people).
About the Role
At Frank, you will be a key part of a small engineering team, and play a critical role in building the company, culture, and product. You will work closely with everyone on the team as well as directly with workers, organizers, and partners to design, build, and iterate upon our core product.
In this role, you’ll work on all elements of our stack, including the design system, graphql backend, React app, website, email systems, external integrations, and anywhere else needs arise.
We don’t need you to have equal experience in all parts of the stack, just a willingness to apply your talents to whatever problems present themselves.
- Develop new product features that span our current stack
- Contribute to designing the engineering team processes, tools, and systems
- Collaborate with internal team members and workers (our customers) to scope product and refine requirements, solve bugs, and implement into product
- Participate in and/or lead code review and other code quality best practices (e.g. refactoring, upgrading dependencies)
- Contribute to maintaining our codebase and keeping it clean
- Implement best practices in security, privacy, and handling sensitive customer data
- Frontend: React + Apollo
- Backend: NestJS
- Typescript everywhere possible
Your qualities and qualifications:
- You’ve worked across the backend of multiple codebases, including building APIs and designing database schemas
- You have React experience that goes beyond, but also includes, making a really, really good, accessible form
- You’re willing to assist with parts of the stack you don’t have a lot of experience with
- You have a desire to learn from and mentor others, be collaborative, and be curious.
- You’re great at communicating, especially with the written word (e.g. you are Good At Slack)
- You thrive in an a low-process engineering environment and can manage prioritization, project scope, and delivering on-time ish (without deadlines, points, or in-depth estimating)
- Extensive experience working in some or all of the technologies on our stack
- Good understanding of relational databases and schema design
- Experience with the trickier parts of a React application
- Experience building CSS layouts
- Experience working with monorepos
- Knowledgeable about testing and CI best practices
- Experience working with sensitive data and designing secure systems
- Experience working with Progressive Web Apps
- Experience working with remote teams (in the Zoom age, perhaps this is a given 🤔)
- Interest or background in the labor movement or other types of organizing (bonus points if it’s digital!)
P.S. You don’t have to have all of these things! We mean it when we say they’re nice-to-have!
Diversity in our team is a priority. We will actively pursue candidates from all backgrounds, and strive to create a welcoming and inclusive company. We welcome applicants who may not check every item on our list of qualifications; we encourage you to apply if you are excited about working with Frank and willing to learn quickly.
We are a remote & distributed team with an available office space in Chicago. You are welcomed to work from the office as often as you’d like - but it is simply an option, with no expectation. We occasionally host team meet-ups in the Chicago office for major events - these will not be required more than quarterly, with travel, lodging, and meals paid for by Frank.
The role is flexible on title and experience level - we’re growing the team and will hire across experience levels as we grow. If the above describes your experience and interests, please consider reaching out to us with information about yourself and your interest in the role.
To learn more, email us with the subject line: "Senior Software Engineer, Fullstack - Tech Jobs For Good" at: [email protected]