Flux was created inside of Google X with a mission to improve the quality of buildings worldwide. By the year 2050, we need to build an astounding 14 millions buildings to keep up with urban population growth. Seen through another lens, we need to build approximately 1000 buildings each day, every day for the next 23 years.
We believe that by using technology we can remove barriers between designers, engineers, builders, and suppliers. This enables better, faster decision making, lowers the cost, shortens the build time, and ultimately improves the quality of the built environment. We can then add an additional layer of machine learning and artificial intelligence to augment human intuition to improve the building process even further.
Although we are a young technology, Flux is already used by teams working on some of the largest and most complex construction projects worldwide. With San Francisco’s rapidly changing skyline, you likely walk past our users’ work every day.
Software development at Flux is a collaborative effort between the engineering, product, and customer-facing teams. We work on small teams that take ownership of design, implementation, support, and quality. We value good engineering practices such as design documentation, unit testing, continuous integration, and code reviews. We use and contribute to open source software. Flux has a strong culture of respect and professionalism, and there is open communication between all layers and all areas of the company.
Flux employees are motivated by the expectation that we will leave a meaningful mark on our industry. Many have very strong educational backgrounds, and all share an ability to work efficiently in order to find elegant solutions to complex problems. We love our beautifully renovated old printshop headquarters in San Francisco’s SOMA area, where we regularly find time to host hackathons and jam sessions, and share meals in our commercial-quality kitchen.
As a Software Engineer on the Infrastructure team, you will join a small, high-functioning, diverse group of people who are the stewards of our modern, cloud-based platform. The team’s responsibilities include platform reliability and scalability, security, deployments, ops, data storage, and our distributed cloud-based graphical programming language. All engineering teams are small and autonomous, and have high standards with respect to code quality and craftsmanship.
Technologies We Use
- 8+ years software development experience creating software used by thousands of people
- Comfortable scoping, planning, and implementing sizable engineering efforts
- Experience with distributed systems programming
- Comfortable with complexity but strive for simplicity
- Significant Unix / Linux development experience
- Experience as a technical lead for teams of 4-5 people or larger
- Experience with Windows programming