Senior Principal Software Engineer

Development | Pune (IN)


The Senior Principal Software Engineer designs, develops, troubleshoots and debugs software applications for our core product. This includes developing software components including Frameworks, APIs, Websites, Utilities, Databases and Internet-related tools. Demonstrates technical leadership at department level, help in evaluating and implementing new technologies, tools. Contributes in improving the SDLC process and quality standards.



•                     Bachelor’s Degree in Computer Science or equivalent

•                     12-18 years’ of industry experience in programming web applications, mobile and/or large scale enterprise products

•                     Deep knowledge of C#, ASP, .NET, MVC

•                     Deep knowledge and extensive experience working on Ruby or React and JavaScript, as required

•                     Experience with XML, ADO/ADO.NET, LINQ, AJAX, IIS

•                     Extended experience with SQL and relational databases

•                     Experience in TFS and Visual Studio

•                     Familiar with SDLC and programming design patterns

•                     Familiar with Agile methodology

•                     Skillful at reviewing new feature impact on an application and recognizing potential risks

•                     Uses time effectively and efficiently

•                     Quickly learns new technologies

•                     Detailed oriented, professional and possesses a positive work attitude

•                     Communicate professionally both verbally and in writing



•                     Develops software solutions by studying information needs, conferring with users, studying systems flow, data usage, and work processes, investigating problem areas, following the software development lifecycle.

•                     Conducts systems analysis and makes recommendations to improve the system to achieve an outcome.

•                     Promotes internal best practices and coding conventions to write and execute tests for your own code, including creating comprehensive unit tests.

•                     Contributes to Technical Requirements Documents.

•                     Requests constructive feedback for designs early in the process.

•                     Communicates successfully with large teams and many stakeholders.

•                     Provides mentorship for Software Engineers and participates in interview panels to hire new Software Engineers.

•                     Assists in removing obstacles for the team to yield successful sprints.

•                     Performs peer code reviews to ensure quality of the codebase.

•                     Ability to decompose and delegate work to junior engineers.

•                     Updates job knowledge by studying state-of-the-art development tools, programming techniques and computing equipment; participating in educational opportunities, reading professional publications, maintaining personal networks, participating in professional organizations.

•                     Works effectively with multiple projects and departments.

•                     All other duties as assigned.