
Principal Software Engineer
- Bangalore, Karnataka
- Permanent
- Full-time
- Development and Management of Web Services
- Design and implement robust and scalable web services using C# and .NET technologies
- Ensure the integrity and security of web services.
- Experience in the use of common procedures in web-based applications (asynchronous and synchronous communication, authentication methods: oAuth, OICD etc.)
- Collaborate with other developers and architects and BAs to create and implement technical specifications
- Minimum of 5 years of professional experience in software development with C#
- Proven experience in creating and using multi tier applications and web services programmed in C#.
- Strong knowledge and hands-on experience with web application related communication protocols (web services in general, REST paradigma etc.), common authentication methods used in web applications (oAuth, OCID etc.).
- Strong working knowledge of Web application development using .NET, C#, Asp.net, MVC, WebAPI.
- Deep understanding of .NET Framework and .NET Core.
- Knowledge of modern software development methodologies and tools.
- Strong troubleshooting and debugging skills.
- Experience in database programming, particularly with MS SQL Server.
- Experience with cloud services (e.g., Azure) is a plus.
- Experience with frontend development Angular JS (Java Script) is a plus.
- Good working knowledge of MSSQL - SQL, T-SQL etc.
- Experience with usage of TFS
- Familiar UI testing and Unit Testing (MS Test/ Jasmine/ MOQ/ NUnit/ Karma etc.)
- Good understanding of object-oriented programming (OOP)
- Strong experience in designing and working with n-tier architectures
- Should have worked in an AGILE practice methodology (preferably SCRUM)
- Working knowledge Authentication and Authorization [Plus OAuth2, OpenIDC etc.] (5+)
- Develop and optimize database solutions, preferably with MS SQL Server.
- Create and maintain stored procedures, views, and database triggers.
- Ensure data integrity and security through efficient database management and maintenance.
- Main contact person of developers in India. Assist with problem-solving and technical decision-making.
- Conduct code reviews and ensure adherence to best practices and coding standards.
- Collaborate with other teams and stakeholders to understand and fulfil project requirements.
- Maintenance of existing applications
- Development of a new application
- Contact person for the team members on site in India
- Excellent communication skills.
- Willingness to act as a central point of contact for the developers of the Environment Testing Germany team in India.
- Ability to work effectively in a multicultural and distributed team environment.
- Proactive and solution-oriented approach.
- Ability to manage multiple tasks and projects simultaneously.
- The successful candidate will have a self-motivated, get-it-done attitude; the ability to think critically; enjoy working with teams spread globally and across cultures; a desire to learn in new areas; and the discipline to pay attention to deadlines, details and quality.
- Good communication and interpersonal skills to interact with the team in Europe
- BE Computer Science/MCA or any other Bachelor's degree with the right experience