Software Engineer - India, United States - Assurant Automotive Warranty Solutions (India) Private Limited

    Assurant Automotive Warranty Solutions (India) Private Limited
    Assurant Automotive Warranty Solutions (India) Private Limited India, United States

    1 month ago

    Default job background
    Description

    We are seeking an experienced Senior Software Engineer to work with the leads of our software development team in enhancing and maintaining our suite of APIs and web-based interfaces.

    In this pivotal role, you will leverage your expertise in C#, SQL, WCF, and SOLID principles to design robust, scalable software solutions that meet our business and technical requirements.

    Your leadership will be crucial in setting technical direction, mentoring junior engineers, and ensuring the delivery of high-quality, secure, and efficient software.

    As a Senior Software Engineer, you will collaborate closely with cross-functional teams to align development efforts with strategic goals, driving innovation and excellence in our software engineering practices.

    This position will be Remote at our India location.

    Leadership in API Development:
    Lead the design, development, and maintenance of robust backend APIs using C#. Ensure APIs are scalable, secure, and integrate seamlessly with various client-side applications.

    Advanced Web UI Engineering:
    Oversee the creation and refinement of web-based user interfaces, advocating for best practices in usability and design. Ensure a cohesive and efficient interaction between frontend and backend systems.

    Database Architecture:
    Architect and optimize complex database systems using SQL. Mentor team members on advanced database concepts like indexing, transactions, and concurrency.

    Implementation of Design Principles:

    Champion the use of SOLID principles and design patterns across all software projects to promote code that is well-structured and maintainable.

    Knowledge of Windows Communication Foundation (WCF) to architect and fine-tune service-oriented applications that support critical business processes.
    Quality Assurance and

    Code Review:
    Lead code reviews, enforce coding standards, and introduce automated tests to ensure the delivery of high-quality software solutions.

    Security Leadership:

    Develop and oversee the implementation of advanced security protocols for both APIs and web interfaces, ensuring robust protection against modern security threats.


    Performance Management:
    Direct performance optimization initiatives, identifying bottlenecks and deploying solutions that enhance system responsiveness and throughput.

    Strategic Collaboration:
    Work closely with product managers, IT staff, and executive teams to align software solutions with business goals. Mentor junior engineers and contribute to the professional growth of the team.

    Understanding of IaaS:

    Strong familiarity with Infrastructure as a Service (IaaS) concepts and how to leverage them for efficient resource management and deployment across various environments.


    Knowledge of Azure:
    Proficient in utilizing Microsoft Azure for deploying, managing, and operating scalable, complex applications in the cloud


    Advanced C# Programming:
    Expert-level understanding of C# and .NET frameworks, capable of architecting, writing, and maintaining complex, high-quality code.

    Web UI Development:

    Strong skills in developing and optimizing web-based user interfaces, with a deep understanding of front-end technologies and frameworks like Angular or React.


    Database Architecture and Optimization:
    Expert in SQL with experience designing and managing advanced relational database systems. Proficient in performance tuning and complex query optimization.
    Mastery of


    WCF:
    Comprehensive knowledge of Windows Communication Foundation (WCF) for developing and maintaining service-oriented architectures.

    SOLID Principles Application:
    Thorough understanding and application of SOLID principles in software design and architecture to promote scalability and maintainability.
    Advanced proficiency in using tools like Git, including branching, merging, and deployment strategies.

    Automated Testing:
    Expertise in developing and maintaining robust automated testing frameworks and continuous integration/continuous deployment (CI/CD) pipelines.

    Security Best Practices:
    In-depth knowledge of security protocols, data protection mechanisms, and secure coding practices.
    Strong leadership skills with the ability to mentor junior developers, manage projects, and lead cross-functional teams effectively.
    Problem Solving and

    Analytical Skills:
    Exceptional problem-solving skills with a methodical approach to troubleshooting and system analysis.

    Senior-Level Software Development :
    At least 5-7 years of experience in software development, with significant experience in a senior or leadership role.

    Project Management :
    Proven track record of successfully managing and delivering complex software projects from conception to deployment.

    Agile Methodology :

    Extensive experience working in agile environments, with a solid understanding of agile principles, practices, and frameworks like Scrum or Kanban.

    Experience in mentoring junior engineers and leading code reviews to enhance team skills and code quality.
    Bachelor's degree in computer science or

    Related Field:
    Advanced degree in computer science, information technology, software engineering, or a related discipline.
    We work with the world's top brands to make smart devices simpler. And we volunteer in communities all over the globe to help the world become a greener, better place.