Senior Lead Software Developer Job Overview We are seeking an experienced senior developer/team lead/technical architect with a proven track record in the design and development of architectural frameworks for scalable, secure, stable and high performing applications. This candidate will join the R&D team engaging with stakeholders, product managers and members of the development team working in an agile development environment and will contribute to the Smart Grid Platform development through research, analysis, design and delivery meeting the evolving needs of the business. The candidate will use best in class industry technologies and will be core to the delivery of solutions for the client's customers and clients. Role Responsibilities and Accountabilities Responsibilities include the following: Liaising with stakeholders and product managers in order to identify, understand and collect the key needs, and documenting the resulting technical requirements Accountable for architecture of applications within Visualisation and NOC Team and working in conjunction with other members of the architectural team to derive the most suitable design solutions for the core platform considering scalability, security, performance and stability Ensuring application designs support the overall technological strategy of the business and platform evolution Working with the architectural team to identify opportunities to improve the existing architecture, recommending the incorporation of new technologies and approaches where appropriate Evaluation of emergent technologies and best practices to identify new opportunities to improve the platform architecture and design Work with wider team to design and develop prototypes using new technologies and concepts, sharing knowledge gained and acting as a facilitator for developers to bring new solutions to production Contribute ideas to help ensure that required standards and processes are in place for the development team to produce high quality software and actively look for opportunities to enhance and innovate business solutions and improve process efficiency Required Experience and Skills Professional experience working as a team lead or technical architect or senior developer with exposure to same as part of role. Demonstrable success in architecting, designing and developing high availability, high performance, scalable and secure cloud infrastructure solutions and/or experience employing microservice architecture for a white-label SaaS platform. Extensive experience with object orientated programming in C#, Java, the .Net Framework stack, Entity Framework and API Services. Strong experience with databases such as MS SQL, MySQL, Postgres, MongoDB, Redis. Relevant experience using messaging frameworks such as RabbitMQ or Azure Service Bus or similar relevant to cloud services from AWS and Google Understanding of design principles for cloud-based platforms and cloud development experience with Azure Experience with CI/CD automation and service containerisation (Jenkins, Git, SonarCube, Prometheus, and others) Experience working in an Agile product development environment Proven track record and desire to deliver high quality projects on time Excellent communicator (written and verbal), comfortable working with variety of stakeholders Analytical and passionate about problem solving, system design and software development Ability to innovate and develop new approaches to complex design problems Experience working in a dynamic and collaborative work environment Desired Qualifications and Other Experience A qualification in the Computer Science, Information Technology, Engineering or Management Information Systems field is highly desirable. The following experience would be advantageous but not essential: Experience using and deep understanding of NoSQL database technologies/Big Data Frameworks such as Hadoop, HBase, MapReduce, Spark, Hive etc. Relevant experience using BigData and Analytics tools on Azure (Data Factory, Databricks, Datalake, HDInsight, etc) or other cloud technologies. Knowledge of globalisation and localisation (the business is currently expanding into other jurisdictions). Experience working with Python, Java or C++. Experience working with large data sets. Experience with multi-threaded/ Async applications. Exposure to automation or control systems / PID / SCADA. Experience working in an energy related industry combined with a passion for energy sustainability and innovation. The candidate must have a valid visa to work in Ireland.