Senior Full Stack Developer
ICON is looking for a Senior Full Stack Developer to join our platform team. You will work across our software systems to create tools, services, and interfaces that are revolutionizing the construction industry.
You'll get the opportunity to work with some of the world's leading engineering and creative professionals to build a new technology ecosystem from the ground up. There is virtually no legacy in our tech stack, so we are building new systems instead of servicing technical debt. As a result, a significant portion of your time will be spent pushing the limits of what is possible in construction automation and improving our end product for developers, builders, and homeowners.
RESPONSIBILITIES
We are looking for an open-minded, structured thinker who loves to solve complex problems and appreciates the value of prototyping and refining applications over time. This individual should be experienced with each layer of a production software and able to move between server side, database, front-end, deployment, and scaling.
QUALIFICATIONS
- Significant professional experience as a software engineer
- BS in Computer Science or equivalent experience
- Experience building platforms, micro-services, and APIs
- Experience managing other technical team members on large projects
- A willingness to accept failure, learn and try again, and an open mind to try solutions that may seem impossible at first
- A passion for learning new disciplines and gaining a deep understanding of how other professionals do their work
- An ability to communicate clearly and succinctly both in-person and via written asynchronous channels
PREFERRED SKILLS AND EXPERIENCE
- Node.js and TypeScript experience, with a functional programming approach, preferred
- React, Redux, and RxJs experience
- Flutter, React Native, or Android development experience
- PostgreSQL, GraphQL experience
- Modern CI/CD workflows: GitHub, Jenkins, Travis, etc.
- Experience with tools and services that leverage three-dimensional trigonometry to calculate and analyze shapes and tool paths