Purpose of Role
As a Software Architect you will be responsible in developing platform framework used by EDQ products and services. You are expected to contribute to the architecture roadmap that underpins the product vision, the implementation and the evolution of the EDQ SaaS Platform and Services. Your work touches all EDQ products and services, and in many cases is part of new and high-profile company initiatives in the Data Management space. In MY GDC, we are hiring people who want to work on challenging enterprise software development projects using cutting edge .NET technology. If you have experience with .NET features such as the ADO.NET Entity Framework, the ASP.NET MVC Framework, or the Windows Communication Foundation (WCF) API, then we want to hear from you. Or, if you're a committed and talented software developer who wants to learn more about these technologies, then we want to hear from you as well.
We are looking for someone who has:
Essential Duties and Responsibilities
- Proven successful technical leadership of development projects.
- Strong organisation skills - ability to handle a dynamic environment.
- Positive and professional approach at all times.
- Excellent analytical and problem solving skills.
- Initiative and ability to demonstrate a pro-active approach to tasks.
- Excellent communication skills, both written and verbal.
- Ability to work under pressure and to deadlines.
- Contribute to the architecture roadmap that underpins the product vision, i.e. the implementation and the evolution of the EDQ SaaS Platform and Services.
- Hands-on participation in product development project teams by:-
- Leading in architectural and design activities.
- Designing and developing prototypes to mitigate architectural or technical concerns.
- Identify reusable components candidates and promote the usage of the same.
- Identifying code re-factoring candidates and provide advice on the same.
- Identifying and defining integration end-points.
- Champion and govern compliance to defined architectures and best-practices.
- Estimating effort for work assigned to project team.
- Be familiar with the architectures for your area of responsibilities (e.g. platforms, products and/or services) assigned to you e.g. EDQ SaaS Platform, SaaS Capture and etc.
- Bridging the information gaps on all architectural matters between the Chief Technical Architect and the local product development group i.e. act as liaison or point person.
- Be part of the Scrum team working closely with the Scrum Master, Product Owner and other team members to ensure project delivery within agreed objectives.
- Help to ensure that all relevant non-functional requirements have been identified and specified.
- Help to ensure that the documentation of the architecture, design, components and unit-tests is satisfactory.
- Significant commercial software development experience in C#.Net.
- Significant development experience using Microsoft middleware stack - Windows servers, IIS, AD, SQL server and .Net framework
- Excellent understanding of coding-methods, design-patterns and best-practices.
- Across-the-board knowledge of technologies including operating-systems, development-languages, communications-protocols and databases.
- Multi-tier architecture development experience.
- Must be a programming enthusiast with a passion for architecture.
- Knowledge of industry standards like XML, SOAP, XHTML, SQL, and HTTP.
- Knowledge of industry standards like RESTful API and cloud based technologies such as Azure and AWS.
- Unit-testing theory and practical skills.
- Proven commercial experience in the software development lifecycle.
- Technical experience with multiple big data tools/technologies such as Apache Spark, HDFS and platforms such as Cloudera or Hortonworks is an advantage.
- Experience in designing Data lakes with a Hadoop distribution (Cloudera or Hortonworks) is an advantage.
- At least 10 years of working experience in a commercial software development environment of which the last 3 years being an Architect.
- Possess a Degree in Computer Science, Software Engineering or equivalent.