The Position
Looking for a Full Stack Developer to join a growing Cloud Development team and collaborate with other Developers, Data Scientists and Engineers to design and implement innovative solutions for real-time monitoring, verification and optimisation of live equipment in the built environment, including predictive maintenance and Machine Learning driven optimization.
Reporting to our Team Lead: Cloud Applications, the successful candidate will be working on the development of our cloud-based products and technologies.
Take advantage of our key position in the industry to build a more sustainable future through predictive technology and leveraging the wealth of under-utilised data from embedded sensors scattered through building systems.
Tasks and responsibilities include:
- Design and development of microservices and front-end assets primarily using React, the Next.js framework and other modern web technologies
- Design and implement APIs to provide our web apps access to our databases and AWS assets
- Work with stakeholders to design and implement web user interfaces and APIs using common design and software development tools
- Design and implement new software modules using standard software design documentation techniques and known software development tools
- Design and implement database schemas
- Design and implement software solutions to be deployed in AWS
- Administer AWS service deployments
- Troubleshoot and fix problems and bugs with existing software modules
- Update documentation where required as a result of improving the operation and reliability of the software
- Implement improvements to existing software modules as identified by internal and external stakeholders
- Work with the analytics software platform, Skyspark, to deliver improvements and new features as well as provide support to clients. Specific training will be provided
- Implement semantic data modeling based on the open-source initiative Project Haystack
- Test all developed software
- Participate in project and development planning meetings
- Use and contribute to the use of project planning, issue tracking and software documentation tools
- Working with agile methodologies in building CI/CD pipelines
- Significant programming experience and/or skills in Java, JavaScript and React is expected (being able to show code you have worked on will put you at the top of the list)
Essential skills and experience:
Compulsory Technologies with a minimum of 3 years experience
- Thorough knowledge of Object-Oriented Design, Development and programming techniques
- Significant programming experience and/or skills in Java (Java 8 and above) or C++
- HTML 5, JavaScript/ECMAScript, CSS, SCSS
- JavaScript frameworks:
- ReactJS
- Next.js
- Cypress
- Jest
- NodeJS, Node Package Manager (npm)
- Tailwind CSS framework
- Figma
- Linux, Windows
- AWS Services
- ECS, EC2, and Lambdas
- RDS and Dynamo DB
- Amplify
- Docker, Docker Compose, Docker networking
- MySQL, PostgreSQL
- Spring Boot, REST API design and implementation
- Test Driven Development and Automated Testing
- Jenkins CI/CD platforms building pipelines and running automated software builds
- Git, Maven, Gradle
- Atlassian suite of tools (Jira, Confluence, BitBucket)
- Bachelor of Computer Science or equivalent
Desirable skills:
- Development experience in Java with Tridiums Niagara Framework
- Embedded Software development experience or skills
- Understanding of the hardware/software interface
- Modelling of control systems using standard mathematical techniques
- Experience with RS485 and RS232 protocols, and industry standard communications protocols such as Modus and BACnet
- Control systems and instrumentation
- Building Management Systems
- Master of Computer Science or equivalent
Employment Type: Full Time, Permanent
Read full job description