Senior Software Application Developer
Experience: 4-8 years of experience in Software Development Job Location : Chennai Job Description: We are seeking a highly skilled and experienced Lead Software Engineer with expertise in C# .NET, automotive diagnostics (specifically Unified Diagnostics Services - UDS protocol ISO 14229), DevOps, Windows desktop application technologies, web technologies, UI/UX design, debugging skills, application architecture, and continuous improvement. The ideal candidate will have a strong background in developing and implementing diagnostic software solutions, as well as hands-on experience with DevOps practices and the full software development lifecycle. Key Responsibilities: · Technical Leadership: o Lead a team of software engineers in the design, development, and maintenance of C# .NET applications. o Mentor and guide junior engineers, fostering a culture of continuous learning and improvement. o Drive technical discussions and make decisions on architecture and design. · Software Development: o Design, develop, and maintain C# .NET applications for automotive diagnostic systems. o Implement UDS protocol (ISO 14229) for diagnostic communication. o Experience in Implementation of UDS services with the Application Framework o Develop and maintain Windows desktop applications using technologies such as WPF, WinForms, or UWP. o Design and develop web applications using technologies such as ASP.NET, HTML, CSS, JavaScript, and modern frameworks like Angular or React. o Ensure code quality through code reviews, testing, and continuous integration. · UI/UX Design: o Collaborate with designers to create user-friendly and visually appealing interfaces. o Ensure that applications are intuitive, responsive, and provide an optimal user experience. o Incorporate user feedback to refine and improve UI/UX designs. · Architectural Design: o Architect and design scalable and maintainable software solutions. o Ensure adherence to software development best practices and industry standards. o Collaborate with stakeholders to gather and analyse requirements and translate them into technical specifications. · Automotive Industry Experience o Application development for auto industry is mandatory. o Collaborate with automotive engineers to integrate diagnostic solutions with vehicle systems. · DevOps: o Implement and manage CI/CD pipelines for software delivery. o Automate deployment processes and infrastructure provisioning. o Monitor and maintain the health of development and production environments. o Collaborate with IT and development teams to optimize the development workflow. · Continuous Improvement: o Lead efforts in continuous improvement of applications and codebase. o Identify and implement opportunities for code optimization and performance enhancements. o Conduct regular code reviews to ensure high standards of quality and maintainability. · Software Development Lifecycle: o Oversee the entire software development lifecycle, from requirements gathering to deployment and maintenance. o Ensure timely delivery of projects and adherence to project timelines. o Implement and monitor performance metrics to ensure high-quality software delivery. Qualifications: · Bachelor's degree in computer science, Engineering, or a related field. · 4-8 years of experience in software development with C# .NET. · Strong understanding of the Unified Diagnostics Services (UDS) protocol (ISO 14229) and its implementation. · Excellent experience with automotive diagnostics and vehicle communication networks (e.g., CAN, LIN). · Hands-on experience with DevOps tools and practices (e.g., Jenkins, Docker, Kubernetes, Azure DevOps) will be added advantage. · Proficiency in version control systems (e.g., Git). · Experience in developing Windows desktop applications using WPF, WinForms, or UWP. · Good Documentation skills to document the updates of each release. · Experience in developing web applications using ASP.NET, HTML, CSS, JavaScript, and modern frameworks like Angular or React. · Strong debugging skills and experience with troubleshooting complex software issues. · Proven experience in architecting and designing software solutions. · Strong understanding of the software development lifecycle and project management. · Experience with UI/UX design and creating user-friendly interfaces. · Proven track record of continuous improvement and code optimization. · Excellent problem-solving skills and attention to detail. · Strong communication and collaboration skills. Preferred Qualifications: · Experience with other automotive protocols (e.g., OBD-II, DoIP). · Knowledge of cloud platforms (e.g., AWS, Azure, GCP). · Familiarity with scripting languages (e.g., Python, Bash). · Experience with agile development methodologies. Show more Show less