Overview:
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.
Responsibilities:
* Technical Leadership:
* Lead a team of software engineers in the design, development, and maintenance of C# .NET applications.
* Mentor and guide junior engineers, fostering a culture of continuous learning and improvement.
* Drive technical discussions and make decisions on architecture and design.
* Software Development:
* Design, develop, and maintain C# .NET applications for automotive diagnostic systems.
* Implement UDS protocol (ISO 14229) for diagnostic communication.
* Develop and maintain Windows desktop applications using technologies such as WPF, WinForms, or UWP.
* Design and develop web applications using technologies such as ASP.NET, HTML, CSS, JavaScript, and modern frameworks like Angular or React.
* Ensure code quality through code reviews, testing, and continuous integration.
* UI/UX Design:
* Collaborate with designers to create user-friendly and visually appealing interfaces.
* Ensure that applications are intuitive, responsive, and provide an optimal user experience.
* Incorporate user feedback to refine and improve UI/UX designs.
* Architectural Design:
* Architect and design scalable and maintainable software solutions.
* Ensure adherence to software development best practices and industry standards.
* Collaborate with stakeholders to gather and analyze requirements and translate them into technical specifications.
* Automotive Diagnostics:
* Develop and implement diagnostic services using the UDS protocol.
* Work on troubleshooting and debugging diagnostic issues.
* Collaborate with automotive engineers to integrate diagnostic solutions with vehicle systems.
* DevOps:
* Implement and manage CI/CD pipelines for software delivery.
* Automate deployment processes and infrastructure provisioning.
* Monitor and maintain the health of development and production environments.
* Collaborate with IT and development teams to optimize the development workflow.
* Continuous Improvement:
* Lead efforts in continuous improvement of applications and codebase.
* Identify and implement opportunities for code optimization and performance enhancements.
* Conduct regular code reviews to ensure high standards of quality and maintainability.
* Software Development Lifecycle:
* Oversee the entire software development lifecycle, from requirements gathering to deployment and maintenance.
* Ensure timely delivery of projects and adherence to project timelines.
* Implement and monitor performance metrics to ensure high-quality software delivery.
Qualifications:
* Bachelor's degree in Computer Science, Engineering, or a related field.
* 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.
Share this job:
Share this Job