Job Description

Senior Software Engineer

Remote/ Toronto
Apply Now

Daisy AI Inc is an exciting early-stage startup founded by a group of construction industry experts and PhD level academics aiming to disrupt the construction industry with an offering of automated design tools based on artificial intelligence and machine learning methods. Our first product is an automated design tool for timber floors. We have successfully rolled out the product in the UK and we are now expanding into the residential construction market in North America. In the future we are aiming to extend the product portfolio to other construction components, based on market needs such as timber stairs, walls and roofs.

About the role

At the heart of the floor design tool is an optimization engine based on a bespoke genetic programming (GP) framework written in Python and C/C++. This role will see you taking ownership of the code base and extending the functionality to meet the requirements of the North American market. This will involve designing and implementing top-down heuristic driven stochastic algorithms for placement of design elements, genetic operators which manipulate trees, benchmarking performance of the code and tuning parameters, maintaining the python-C interface connecting the GP framework with a C++ structural analysis and costing software. To assist in this regard we have strong and active participation from construction design practitioners who are stakeholders in Daisy. The optimization framework and associated web app, which acts as the frontend, are deployed in Google Cloud so experience deploying and maintaining cloud infrastructure and services will be beneficial. This is a senior role in which the ideal candidate will be expected to manage the software development process and the work of junior engineers, and act as the interface between the code development and the business requirements as specified by commercial team members and construction design professionals. As this role will be at the interface between application, architectural design, and product development excellent communication skills will be required, in which the engineer can articulate complicated concepts from a low-level to a high-level such that a commercial team member can understand.

About you

The ideal candidate will meet the following requirements:

• Masters or PhD in Maths, Physics, Computer Science or an Engineering discipline.

• Experience of computational geometry.

• Experience working with evolutionary algorithms (ideally developmental genetic programming) or other optimization methods.

• Excellent programming skills (5 years+) in Python and/or C/C++ and familiarity with object-oriented programming.

• Passionate about code quality, adhering to best practices for code quality, performance, testing, monitoring, documentation, CI/CD.

• Understanding of git version control system, branching and code versioning.

• Experience working in an Agile framework, defining functional and non-functional requirements and sprint tasks.

• Strong communication skills, able to communicate with both technical and commercial people.

It would also be a bonus if you have experience of the following:

• Cloud computing with GCP or AWS.

• Docker and Kubernetes.

• Working with ctypes and debugging C/C++ code.

• Backend web development.

• Managing development tasks and the work of junior engineers.

What we offer

You will be one of the first full-time members to join the team alongside DAISY directors specialising in artificial intelligence and construction design. As part of the package you will receive:

• A basic salary of $120,000 - $150,000 CAD

• Stock options in the DAISY AI Inc business following a successful probation period

• Flexible hours

• Remote work

• Opportunity work at Autodesk residents’ office space in Toronto, San Francisco or Boston (after the lockdown)