Chennai, India
44 days ago
Lead Software Engineer - Dotnet

About Trimble:

Trimble is a leading provider of advanced positioning solutions that maximize productivity and enhance profitability for our customers. We are an exciting, entrepreneurial company, with a history of exceptional growth coupled with a disciplined and strategic focus on being the best. While GPS is at our core, we have grown beyond this technology to embrace other sophisticated positioning technologies and, in doing so, we are changing the way the world works. Those who successfully lead others to meet our objectives are vital to our organization. Leadership at Trimble is much more than simply exercising assigned authority; we expect our leaders to embrace a mission-focused leadership style, demonstrating the strength of character, intellect and the ability to convert ideas to reality. www.trimble.com

Job Description

Trimble is recruiting for a Lead Software Engineer to fill an opportunity in Chennai, India. You will be responsible for leading and mentoring a team of software engineers in the development and maintenance of complex .NET applications. You will collaborate with product managers, architects, and other stakeholders to ensure the successful delivery of high-quality software solutions.

Job Purpose

Design and Develop Software solutions to meet the functional requirements of innovative products developed by Trimble. 

Make use of well-established design patterns, architectures and follow agile development processes. 

Responsible for designing, implementing, and maintaining software applications.

Perform unit testing of the code developed, develop unit test cases and test harness. 

Perform system integration and bug fixing, develop user documentation, generation of relevant reports and review similar work done by peers.

The candidate is also anticipated to manage the Indian, US and Australian time zones effectively to attend client calls, handle production issues, and so forth.

Provide guidance, mentorship, and support to ensure the team's efficiency and effectiveness in development and release activities

Should have experience with agile methodologies, monitoring all stages of software development to identify and resolve system malfunctions to meet quality standards.

Should be able to assess and communicate potential risks related to software quality, helping the team to prioritize testing efforts based on the potential impact.

Main Responsibilities

Read and understand high-level product descriptions or requirement documents and propose one or more software designs at the module level that are highly reusable and subject to the design principles of the software’s target host platform.

Decompose design elements into the structured code as per prevailing coding guidelines, preparation and execution of unit test cases and development of test codes or test harnesses. Traceback through code, design and resolve issues and bugs.

Plan, organize and execute assignments with very little or moderate supervision, in an agile environment

Responsible for deliveries within the required deadlines. Deliveries can be modules, documentation, customer releases, etc.

Collaborate with business analysts, stakeholders to gather and analyze business requirements

Coordinate with the team for the timely delivery of work products. Ensure the quality of work products by reviews.

Write and maintain clean, efficient, and well-documented code

Ensure data integrity and accuracy through data analysis and data cleansing activities

Create and maintain technical design documentation

Participate in code reviews and provide constructive feedback to peers

Develop and execute unit and integration tests

Support the deployment of solutions into production environments

Provide ongoing maintenance and support for existing Salesforce applications

Sub-Module level responsibility in large projects and Module (or component) level responsibility in small/medium sized projects and complete responsibility is small-sized projects, depending upon the complexity and decomposition

Work with User Experience, QA teams to ensure the validity of the solution

Be contemporary by adopting technological and market evolutions

Other responsibilities as assigned by the management from time to time

Key Result Area

Timely delivery of development and quality release on a sprint-to-sprint basis.  

At least 90% of unit test coverage must be automated (90% of manual test cases must be automated).

Effective reporting of work and reports.

Skillsets

Strong proficiency in Angular and TypeScript

Web Technologies and Protocols:

Understanding web technologies like HTML, CSS, and JavaScript

Familiar with HTTP, HTTPS, RESTful APIs, React, Redux and PWA

Strong proficiency in Microsoft technologies like C#, ASP.NET, Entity Framework, SQL Server, IIS, etc.

Experience with cloud platforms (e.g., Azure, AWS, GCP).

Experience with Storybook or similar tools for component development and testing

Strong command of C# for developing applications with .NET Core and .NET Web API

Experience with cloud-based web development platforms such as Wix is a plus.

Experience with cloud platforms (e.g., Azure, AWS, GCP).

Understanding microservices architecture and containerisation technologies (e.g., Docker, Kubernetes).

Experience in developing mobile applications for iOS and Android platforms.

Knowledge of MVC and MVVM patterns for designing and structuring applications.

APIs and Integration:

Experience with RESTful APIs and third-party integrations.

Experience with developing microservices

Project Management:

Estimate project timelines and resource requirements.

Manage project deliverables and ensure timely completion.

Identify and mitigate technical risks.

Monitor project progress and adjust plans as needed.

Database Management:

Proficiency in working with databases like MSSQL / Mongdb, etc.

Version Control Systems:

Bitbucket / GitHub

Managing code changes and collaborating with other team members

Maintaining a history of code revisions.

Continuous Integration/Continuous Deployment (CI/CD):

Tools like Jenkins/Bamboo/Buildkite

Integrating the automation into CI/CD pipelines

Problem-Solving and Analytical Thinking:

Designing efficient automation solutions/Framework

Ability to identify and troubleshoot complex software defects

Leadership and Mentoring:

Guiding and mentoring other team members

Providing technical expertise and guidance

Agile Methodologies:

Agile methodologies such as Scrum or Kanban

Planning for Iterative development cycles

Manage frequent releases

Risk Assessment and Mitigation: 

Ability to identify and mitigate risks related to software quality. 

Measure how well risks are documented and managed throughout the project.

Resource Management: 

Resource allocation and team management, 

Assess the efficiency and productivity of the testing team. 

Ensure resources are allocated effectively to meet project deadlines and quality goals.

Qualifications & Experience

Graduated from a premier institute.

B.E / B.Tech or M.E / M.Tech / M.S. in Computer Science Engineering or an equivalent degree with a good JEE / AIEEE / GATE score.

10th Grade: State Boards 90%. Central or International Boards: 80%

12th Grade: State Boards 90%. Central or International Boards: 80%

An impressive performance in any national-level Olympiad or talent search examination would be a valuable asset.

Presenting a paper at a national-level forum, contributing to open-source projects, and participating in standards bodies would be beneficial additions.

Working experience in a tier-1 organization for a period of min 5 to 10 years.

Confirm your E-mail: Send Email
All Jobs from Trimble