Senior Full Stack Engineer
Hello! We’re Bellawatt!
We believe that modern, user-friendly software helps energy companies work better, cleaner, and faster. Our team nimbly builds that software, quickly delivering big results with our tightly knit team. Our clients range from solar panel installers such as Sunrun to large utilities such as Con Edison in New York. On the wizards vs. prophets spectrum, we lean toward the wizard side in an industry with many prophets.
The company is over 5 years old, and has been remote, bootstrapped, and profitable from day one. We are proudly small, with plans to methodically grow from our current team of a dozen to the ~20s in the next few years, all based on the attention our space is finally receiving.
We don’t really identify with grandiose “changing the world” mission statements, but our impact is real. We plan to leave the world a little bit better than we found it by helping those who literally keep the lights on! 💡⚡
Compensation and Benefits
We know this section is a pass/fail filter in your job search, so let’s get right to it:
- $130k-160k/yr salary 💰
- Fully remote work environment
- Health insurance
- 401(k) plan
- Macbook provided to run DiffusionBee (oh, and definitely also to do some work on)
- Home office budget
- Flexible vacation policy: 1-2 week breaks in a year are common and encouraged. Sporadic days off, whether for sickness, vacation, or personal needs are also 👍
- Learning budget
- Something missing? We’re small enough to try to make it work. Let’s chat!
Async-first, or, How We Work
Remote work is refreshingly common these days - it wasn’t when we started! Our focus is on using asynchronous communication to give ourselves long chunks of deep work time. It’s not a “perk” or a “reward”; deep work is essential to our nimble approach. A team member with many recurring meetings is an issue for us to investigate together. As a corollary, we believe that writing clearly means thinking clearly, and we write a lot internally.
We do meet regularly a handful of times a week, both as an internal team and with clients. We do this to coordinate and to socialize. We believe that strong relationships are necessary to work well together, and we form them even via screens.
We work sustainable hours; long hour crunches are rare-to-nonexistent. The only chatter in Twist over the weekend is an occasional shared joke or article. Individual schedules are flexible outside of our handful of meetings.
You can read more here. We haven’t updated that page in quite some time, but that’s because it’s still valid! Our methods evolve, but we stick with our principles.
What you’ll do
- Work on small teams. Projects typically have a 2-4 person team, consisting of a Product Manager, 1-2 Developers, and a Designer.
- Work with one focus. Our rule of thumb for engineers is to have a single responsibility week to week to minimize context switching costs.
Build full stack apps. We build web based applications, using:
- Ruby on Rails by default, and Django on occasion, with…
- React frontends, tied together with…
- Inertia.js. We built and currently maintain the open source Inertia.js adapters for Rails and Django. Our totally unbiased authors swear that the adapters are a pleasure to work with!
- Tested and deployed via CI/CD. We use Github Actions to run our automated tests and deploy code. No asking That One Coworker™ to update staging, and no pushing failing tests into production!
- Deployed on IaaS/PaaS. We have deployed resources on Heroku, Digital Ocean, AWS, and Azure. We prefer Heroku and Digital Ocean’s batteries-included offerings. We’re not quite ready for dedicated operations folks, so we bias towards services that let us focus on coding applications.
- TypeScript, Node.js, MaterialUI, TailwindCSS… is a non-exhaustive list of technologies we’ve deployed. We encourage tinkering, but we are deliberate about what we take into production.
- Deploy quickly and often. We work in 3-6 month phases. Our goal is to get to production at “all prudent speed”. We do that via deep product research. We learn quickly and find the smallest scope that gets results for our clients. Your work will not interminably languish in limbo.
- Work in a lightweight process. We plan in biweekly increments, but we don’t do “agile” or “waterfall” or any other heavy process with certifications. We trust our teams to make progress without tight guide rails.
- Meet with Clients. You’ll be expected to speak about our tech with clients on occasion. These meetings tend to be relaxed and friendly.
- Expertise in Ruby on Rails or Django. Specifically, multiple years of experience in a senior role leading development on production apps.
- Self sufficiency. Ability to manage your own time and unblock yourself and your team.
- A writer at heart. You enjoy communicating complex ideas via text. You proofread, even when sharing “rough drafts”. You use writing to clarify your thinking.
Curious tenacity. If you have to occasionally pull yourself out of a rabbit hole because a problem just won’t let go of your curiosity, then you’ll fit in here.
How to Apply
We are excited to add a new colleague! And we won’t waste your time - our interview process is straightforward:
- Email us at [email protected] or click the "Apply" button on this page. If you are emailing us, please include your resume and/or link to your LinkedIn profile.
- An Informal Interview (30 min) where we get to know each other and discuss expectations. If there’s mutual interest, we’ll ask you for a recent writing sample (something you’ve written previously about a complicated technical topic) and send a couple questions for you to answer in writing.
- A Technical Interview (2 hours) where we code together in VSCode’s LiveShare. We will be collaboratively looking at problems inspired by things we actually work on – no bubble sorts or leetcode trick questions. You should have a clear sense of whether you’ll like working with us after we wrap up.
- A Case Study (90 min) that seeks to simulate what it would be like for us to actually work together on a project, including a Product team member.
- We’ll send you an offer within a week.
That’s it! We don’t like drawn-out interview processes any more than you do. Looking forward to connecting!