CADS is a global provider of products and services for construction-related industries. CADS was established in the UK in 1974 by Structural Consulting Engineers to develop, supply and support software for analysis, design and detailing of structural steelwork and reinforced concrete buildings. Since 2007, CADS has also achieved a market leading position in the UK scaffolding industry. CADS is developing cutting edge cloud and mobile solutions that will further enrich its offerings. With over 70,000 product licenses sold in 80 countries and through our design and detailing services, CADS is responsible for some of the most beautiful and iconic buildings in the world.
As a member of CADS Software Solutions Division, you will be part of a growing company delivering superb analysis, design and detailing software for the engineering and construction industry. As a Web Application Architect, you will have a key specialist role, responsible for the development and deployment of world-class web and mobile applications and services.
As a Web Application Architect you work across CADS’ range of Computer-Aided Engineering, Detailing, Scaffolding and Bespoke software, bringing your expertise to each. You will need to work closely with the other members of the team, understanding the product requirements, and designing the software architecture to follow best practices and use components and tools from CADS’ technology stacks.
You will also have a key role in working with the Chief Technology Officer to define standard methods for web application development including the standard technology stacks, architectural and design principles, the use of third-party libraries, reusable CADS libraries and components and coding standards. This will involve challenging current development processes and technology where required.
A significant part of this role will be to champion the transition of CADS from traditional shrink-wrap software to a SAAS provider across Cloud and Mobile platforms. You will have a key responsibility in ensuring the success of this transition, including the definition of policies for developing, deploying and managing Cloud services and, crucially, designing policies and software architectural approaches to safeguard the security and privacy of customer data.
As a Web Application Architect you must be well-rounded, possess maturity, vision, a thorough understanding of software engineering and a depth of proven experience in web and mobile application design and development. You must exhibit leadership and excellent communication skills in order to drive the technical effort to motivate, mentor and earn the respect of the project team and the management team.
The responsibilities of a specialist Web Application Architect are:
- Web technology solutions component:
- Keep abreast of best practices, architectures, patterns, libraries, tools, and languages for web and mobile application development.
- Have a thorough understanding of Cloud technologies used at CADS, including Microsoft Azure, SQL Azure, the Azure Storage Service, Azure Monitoring, Azure Backups, Azure Web Jobs, Azure function app, Azure AD B2C.
- Keep up to date with current Serverless Technologies. Build a Microservices application using Serverless technologies to reduce cloud cost. Should be able to architect a solution to move to Microservices from monolithic applications.
- Remain up-to-date with the continual evolution of Azure and related Cloud technologies, incorporating the latest best practices into CADS web applications. Evaluate and consider alternative providers (e.g., AWS, GCP) with the Chief Technology Officer.
- Should possess skills in Analyzing, executing, and streamlining DevOps practices. Automating processes with the right DevOps tools and establishing a suitable DevOps channel across the organisation. Setting up a continuous build environment to speed up software development and deployment process. Have a good knowledge of GIT based version control.
- Should possess a good understanding of mobile Devops process and should have hands-on experience in releasing the app to Google and Apple app stores.
- Have a thorough knowledge of web and mobile platforms, including browser capabilities, and use them to inform CADS development.
- Have a broad and thorough knowledge of alternative technologies and use them appropriately in web application architectural design, for example, to appropriately use SQL and/or ‘NoSQL’ databases.
- Work with the Chief Technology Officer to define standard methods for web application development including standard technology stacks, architectural and design principles, the use of third-party libraries, reusable CADS libraries and components, and coding standards. This will involve challenging current development processes and technology where required.
- Work with the Chief Technology Officer to make ‘build vs. buy’ decisions.
- Have a broad understanding of CADS software and software architectures, ensuring consistency of approach (where appropriate) and identifying opportunities to integrate and reuse.
- Work with the Chief Technology Officer to extract modules from CADS web and mobile applications and make them available for reuse.
- Web application architecture and technical success component:
- Work with the Lead Developers to conceive and design the architectures for CADS web and mobile applications.
- Understand the application requirements, subdivide them into manageable components and modules, understand the functions and interactions of these components and create the component design.
- Work with the Lead Developers to communicate the architecture, architectural decisions, and design to the team, assist them with development and resolve issues.
- Work with the Product Analyst-Designers to determine and document the non-functional requirements for CADS web and mobile applications, including supported platforms and environments, security, performance, scalability, reliability, use of resources and testability. Ensure these requirements are met by the application architecture, design and implementation.
- Work with the Chief Technology Officer to ensure the adoption of best practices and a consistent approach for web and mobile applications across the CADS Structural Engineering, Detailing, Scaffolding, and Bespoke Solutions Groups.
- Ensure CADS web and mobile applications are fit for purpose and work in realistic situations, not just ‘on paper.’
- Assist the Lead Developers in ensuring that software development projects are well planned and organised by identifying technical risks (aspects of the software that the team is unsure how to develop) and planning technical investigations to resolve them with the Release Manager, avoiding situations where projects are delayed because of unexpected technical problems.
- Complete any such technical investigations, with assistance from other team members as required, including the development of any proof-of-concept prototypes, and review them with the team and the Chief Technical Officer.
- Web deployment environment component:
- Have a thorough knowledge of the web deployment platforms used at CADS, whether Cloud platforms or on-premise deployments.
- Have overall responsibility for the security design of CADS web and mobile applications, having responsibility for keeping company and customer data private and safe. Examples: use HTTPS to encrypt user credentials and data, ensure APIs are secure, ensure underlying storage cannot be accessed except through the secure API, ensure customers cannot access other customers’ data, and so on. Design the security of CADS Cloud applications to limit the access CADS’ staff have to customer data and credentials.
- Design practical solutions to deploying, testing, upgrading, monitoring and maintaining live Cloud services.
- Work with the IT Operations team to ensure deployments and their security are implemented and managed as designed.
- Work with the Chief Technology Officer to define policies for Cloud deployment operations including backups, monitoring, error logging, HTTP error logging and resolution, and so on. Incorporate these policies into CADS Development and Operations as appropriate.
- Bachelor’s or Master’s degree in Software Engineering, Computer Science or Computer Applications or appropriate experience.
- Minimum of 5 years’ experience in all stages of the software development process, specialising in web and mobile application development.
- Should possess proven leadership skills including excellent interpersonal, and organisational skills.
- Should possess excellent communication skills (spoken and written).
Location, travel and reporting relationship
Location: Chennai or Broadstone
Travel: Occasional travel to the Corporate HQ in the UK or the development office in Chennai, or to customer sites as required.
Reporting relationship: Product Manager or CTO