Job
Description
As a Senior Principal Software Engineer, you will be responsible for designing and delivering scalable, high-quality software solutions. Your role will involve writing maintainable, clean, and well-tested code while advocating for industry best practices in software development. You will play a crucial part in architecting enterprise-grade applications, guiding technical teams, and ensuring adherence to coding standards and modern development methodologies. Collaborating closely with stakeholders, including business analysts and technical teams, will be a key aspect of your role. Developing highly configurable applications that align with business goals and emphasizing mentorship, fostering technical excellence, and driving continuous improvement through innovation and the adoption of cutting-edge tools and technologies will be an integral part of your responsibilities. Your duties will also include working on complex manufacturing domains, leading and managing software development teams, overseeing all activities of the software development team, and setting clear goals to ensure timely and successful project delivery. You will be required to provide mentoring, guidance, and direction to software development leads and team members, promoting diversity and collaboration within the team to drive innovation and inclusivity. Proficiency in agile practices to support modern and efficient software development, driving continuous improvement by identifying opportunities to enhance development processes, tools, and team capabilities, exploring and leveraging new AI tools to optimize productivity, and enhancing team efficiency will be essential for this role. Your responsibilities will also involve creating and maintaining technical architecture to meet technical, market, and business goals, leading the strategic direction and execution of software architecture to ensure alignment with evolving business needs, and supporting organizational transformation. You will play a key role in collaborating with prospects, customers, business partners, senior management, and other stakeholders throughout the software development lifecycle. Training and mentoring staff in design patterns, best practices, and the software development lifecycle will be part of your responsibilities. Keeping current with technological advancements and company standards, problem-solving, and introducing innovative solutions, and leading the hiring process to acquire top talent aligned with team needs and organizational goals will also be required. Your role will involve managing the software development budget, ensuring resources are effectively allocated to achieve key business outcomes on time and within budget, and maintaining ownership of time, cost, and quality for all deliverables. Ensuring compliance with industry standards, regulatory requirements, and company policies, defining and enforcing policies, procedures, and best practices, and monitoring key quality metrics to track performance, identify trends, and drive improvements will be part of your responsibilities. The ideal candidate for this position should have a Bachelor's degree or higher in Computer Science, Engineering, or a related technical field, with 12+ years of experience leading and managing large software development teams. Extensive experience in goal-driven resource management, technical recruitment, and project management is required, along with expertise in advanced JavaScript libraries, frameworks, and tools such as React, React-Router, Redux, Node, Jest, RsPack, RxJs, Webpack, Browserify, etc. Additionally, experience in cloud-native infrastructure, containerization technologies, and strong architectural mindset will be beneficial for this role.,