Mentmore Recruitment
06/01/2025
Full time
About Us Our client is a pioneer in network infrastructure monitoring powered by IoT technology, developing innovative critical resource monitoring solutions. Exceptional software is at the heart of their mission and essential to their customers. They continuously optimize, enhance their systems, and develop new features. As a Lead Software Engineer, you will lead a cross-functional team of talented developers, contribute hands-on to software development, drive the technical direction of their products, and play a key role in expanding their digital product portfolio. About the Role We are seeking an experienced software engineer to help deliver the company's digital product strategy. You will take ownership of a key part of the digital product portfolio, working closely with the Head of Digital Products to shape its future. Additionally, you'll lead a technical team to deliver the strategic commitments. This role requires strong software engineering expertise, an understanding of system design trade-offs, and the ability to solve complex problems collaboratively. Key Responsibilities Technical Leadership: Lead a cross-functional technical team, providing mentorship, technical guidance, and process enhancements to ensure team success. Collaboration: Work with the Head of Digital Products, Senior Tech-Lead, and stakeholders to define and prioritize product features, ensuring technical implementation meets business needs. Development: Design, develop, and maintain web and app software using the core tech stack (C# .NET, React, Azure, Git, .NET MAUI). Firmware & APIs: Develop and maintain firmware, APIs, and database systems using technologies like C, C++, and Azure. System Improvements: Identify opportunities to enhance system reliability, simplicity, and maintainability, recommending tech stack updates where needed. Innovation: Stay informed of industry trends and emerging technologies, evaluating their potential impact on the product portfolio. Risk Mitigation: Identify and address technical risks and develop strategies to manage technical debt. Culture Building: Foster a culture of innovation, experimentation, and continuous learning. Cross-team Contributions: Participate in architecture discussions and support wider software development initiatives. User Support: Provide responsive support for urgent issues affecting system users. Role Requirements Leadership Skills Whether you're an experienced or first-time leader, you'll need: Strong verbal and written communication skills. Ability to motivate and inspire team members. Excellent interpersonal skills for effective collaboration with stakeholders and team members. Problem-solving and troubleshooting expertise. A flexible attitude to manage changing priorities. Understanding of agile software development methodologies and their trade-offs. Technical Skills Core Requirements: 5+ years of experience in software development. Proficiency in Linux/Unix and Windows environments. Familiarity with cloud services, especially Azure. Strong knowledge of networking, network security, and IT security. Understanding of best practices for always-on, always-available services. Open-mindedness and a willingness to learn new technologies as needed. Technical Expertise by Team Focus Product Development Team: Full-stack web development experience with C# .NET, React, Git, and CI/CD pipelines. Experience with .NET MAUI for app development (a plus). Strong knowledge of RDBMS and SQL, especially PostgreSQL. Embedded & Data Platform Team: Expertise in C and C++ development. Firmware development experience for Embedded and IoT devices. API development experience. Strong understanding of computer architecture, operating systems, and device drivers. Proficiency in debugging firmware for microcontrollers and SoCs. Familiarity with IoT protocols (eg, MQTT). Strong knowledge of communication protocols (TCP/IP, I2C, MODBUS, SDI12, etc.). Understanding of device management and security protocols (eg, TLS, DTLS). What We Offer 37.5-hour workweek with flexible core hours and remote options. On-site attendance: minimum one day per week or as needed for delivery. Benefits: 26 days of annual leave + bank holidays (with the option to purchase additional leave). Pension plan. Salary sacrifice car scheme. Health coverage. Enhanced parental leave. Employee Assistance Program (EAP).