Job Description
Trimble is recruiting for a Staff Software Engineer to fill an opportunity in Chennai, India to help build Generative AI projects.
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.
Design and implement comprehensive automated tests
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 European 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
Develop Generative AI applications. Candidate should be able to quickly pick up agentic frameworks such as LangChain, LangGraph etc. and work with techniques such as prompt engineering, RAG and fine-tuning
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
Participate in code reviews and provide constructive feedback to peers
Develop and execute unit, integration, and end-to-end tests
Support the deployment of solutions into production environments
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
Other responsibilities as assigned by the management from time to time
Key Result Area
Develop production-ready Generative AI applications
Timely delivery of development and quality release on a sprint-to-sprint basis.
Unit test coverage to be at least 90% (90% of manual test cases must be automated).
Effective reporting of work and reports.
Skillsets
Strong proficiency in Python programming language.
Experience with cloud platforms (e.g Azure, AWS).
Knowledge of microservices architecture and containerization technologies (e.g., Docker, Kubernetes).
Experience with RESTful APIs and API design principles.
Understanding of database management systems (e.g., NoSQL, PostgreSQL).
Proficiency with Git for version control.
Version Control Systems:
GitHub
Managing code changes and collaborating with other team members
Maintaining a history of code revisions.
Continuous Integration/Continuous Deployment (CI/CD):
Tools like GitHub Actions
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.
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 8 to 15 years.
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