Principal Software Engineer
Posted on 8/31/2023
INACTIVE
Solar installation & assessment software
Company Overview
Aurora is on a mission to create a future of solar energy for all. Aurora’s cloud-based software transforms solar design, sales, and delivery. With just an address and electric bill, Aurora empowers you to generate a full, accurate, and customizable design for every customer — and close the deal on the spot.
AI & Machine Learning
Data & Analytics
Energy
Company Stage
Series D
Total Funding
$525.8M
Founded
2013
Headquarters
San Francisco, California
Growth & Insights
Headcount
6 month growth
↓ -1%1 year growth
↑ 27%2 year growth
↑ 128%Locations
Canada
Experience Level
Entry
Junior
Mid
Senior
Expert
Desired Skills
Node.js
AWS
Docker
JavaScript
React.js
Ruby
Kubernetes
TypeScript
Quality Assurance (QA)
CategoriesNew
Software Engineering
Requirements
- 10+ years of experience as a software engineer
- Passion for enhancing developer experiences and driving continuous improvement in development practices
- Strong problem-solving skills with a keen eye for process inefficiencies and areas for improvement
- Excellent communication skills and ability to collaborate with cross-functional teams
- Knowledge of containerization (Docker, Kubernetes) and AWS is a definite plus
- Having some development experience building SaaS applications
- Proficiency in one or more of the programming languages/frameworks in our tech stack: Javascript/Typescript, React, GraphQL, Node.js, Ruby, Rails, Go
Responsibilities
- Process Optimization
- Work with software engineers, QA team members, and other stakeholders to identify pain points and develop solutions that enhance productivity
- Design, implement, and manage streamlined workflows that enable faster development cycles and improved collaboration across teams
- Tooling and Automation
- Encouraging and building automated processes wherever possible
- Build and maintain automation scripts, tools, and utilities that simplify complex tasks, reduce repetitive work, and ensure consistent processes
- Collaborate with engineering teams to integrate automated testing, continuous integration, and continuous deployment (CI/CD) pipelines
- Developer Experience
- Advocate for developer-centric improvements by gathering feedback and insights from our engineering teams
- Design and implement user-friendly interfaces, documentation, and tutorials for tools and processes, fostering a seamless developer experience
- Provide technical support and mentorship to developers, assisting them in adopting new tools and practices
- Monitoring, Performance, and Code Quality
- Collaborate with other engineering teams to ensure optimal system performance during development and deployment
- Implement monitoring and performance analysis tools to track development process efficiency, identify bottlenecks, and suggest improvements
- Develop and maintain tools and workflows to ensure consistent code quality