Software Engineer

Durham, NC
/
Full-time /
Location: Durham, NC (Preference for the research triangle area; but open to remote)
Hiring Manager: Tyler Curtis
Read our FAQs: http://bit.ly/SoftwareEngineerFAQ
Submit your structured cover letter: via written answers or video recording
Application Deadline: November 30th, 2020
Salary: $100-$120k

American Efficient, a Modern Energy company, develops and manages portfolios of energy efficiency resources. These resources can take the form of anything from LED light bulbs, to high efficiency washing machines, to entire data centers. We aggregate these resources and trade them in US energy markets, pushing out dirty energy generators like coal and fossil fuels.

The Opportunity
The energy system is approaching a tipping point where renewable and clean energy will re-invent the energy system — and American Efficient is at the forefront of this transition. We have an ambitious goal to have 10 gigawatts (equivalent to about 16 coal plants) under management by 2025. If you care about the planet, there’s no better place to have an outsized impact on climate change.

American Efficient is hiring a Software Engineer to help build internal tools that support all of our business operations. You will work with our current engineering staff to define, design and implement new features, bug fixes, and process enhancements that will improve the efficiency of the Sales, Trading, and Program Management teams. Our database is responsible for housing the gigawatts of electrical efficiency resources the company owns, and your role in supporting the health and usability of that database and surrounding applications will be critical to the long-term success of American Efficient.

What You’ll Do

    • Note: We do not expect a candidate to be proficient in all of the following areas! Our team has a shared commitment to learn from one another, and to teach the skills needed to be successful here.
    • Use PostgreSQL to query, update, and maintain our database
    • Use Python, SQLAlchemy, and Alembic to model our data and provide extra functionality 
    • Use Python, Flask, and Celery to provide a web API for interacting with our database
    • Use AWS and other cloud providers to run our database and ETL processes at scale
    • Use HTML, JavaScript and Vue.js to provide a front end that is used by the Sales and Operations teams to access the database
    • Use git and GitHub to push code changes, create and review pull requests, and track important issues or feature enhancements
    • Create and maintain web scrapers and CSV parsers to extract meaningful data from partners' web pages and sales documents
    • Write unit, functional, and integration tests to ensure our code is working as expected
    • Maintain and update our continuous integration and deployment processes
    • Communicate questions and decisions via Slack, email, GitHub, phone, and video chat
    • Participate in design conversations about our technologies, projects, and processes

What You’ll Bring to the Table

    • A wide range of programming skills and a generalist's mentality
    • A desire to build great software and stop climate change
    • The curiosity to understand the business needs behind the code requirements
    • Intelligence, drive, a sense of humor, and a track record of success
    • Learn more about what we’re looking for HERE

Personal Qualities

    • Thoughtful: Moving fast and breaking things might be valuable for a web app that has millions of users posting memes about current events, but it is a dangerous idea for code that manages data backing financial instruments. We expect the engineering team to consider edge cases, test their assumptions, and communicate about issues before deploying code to production.
    • Organized: We are a small team supporting a number of other teams at this company. You may be asked to work on projects in a number of different domains, and you will need to be able to keep track of what you were doing and what state you left it in so that it is easy to switch between tasks.
    • Desire to Learn and Teach: We don't expect anyone to know everything there is to know about programming or the subset of languages and technologies that we use at American Efficient, nor about the energy industry. In order to succeed on the engineering team, you should be excited about learning new skills and getting to apply them in a mission-critical codebase. You will also have the opportunity to teach others the things you know.
    • Mission-Aligned: You are excited and motivated by the goal of delivering affordable, reliable, and sustainable energy to all.
    • Empathetic: Brogrammers, rock stars, and condescending know-it-alls need not apply. We believe that disagreement about the best course of action for our engineering projects is normal and important, and we approach it with kindness, respect, and humility.

How to Apply

    • All applications need to be in by the application deadline of November 30th @ 11pm ET. We are interested in exploring software engineers at all levels, from all backgrounds. We strongly encourage applicants from historically marginalized communities to apply. To complete an application, please do the following:
    • Resume: Upload your resume.
    • Submit a Structured Cover Letter: After applying, you will receive an email inviting you to submit a structured cover letter. You can choose to submit your answers via written form or by recording a video through our SparkHire platform. We recognize that not all applicants feel comfortable recording a video so we urge you to select the medium that works best for you. Note: your structured cover letter must be submitted by the application deadline. 
Benefits: This will be a full-time position including competitive salary, annual bonus structure, parental leave and unlimited vacation, other short-term incentives, employer subsidized health and dental insurance, and a 401k plan with employer match. 

Location: We have a preference for candidates that are based in Durham, NC or the Research Triangle (or willing to relocate), as we have an active office culture under normal circumstances. Currently, all staff are working from home until we reopen our offices.