
On-Site
Full-Time
Bengaluru, Karnataka
India
About the Role
Roles and Responsibilities
In this role, you will:
Maintain and enhance existing tools, ensuring they meet the evolving needs of the user communities
Troubleshoot and resolve issues related to the engineering data, performance, reliability and usability of existing tools
Lead the design, development, and implementation of robust, scalable, and efficient software components
Write clean, efficient, and well-documented code, in line with standard software development practices
Develop and evolve software in a fast paced and agile development environment using the appropriate software development technologies and infrastructure
Define and implement core data structures and their algorithms in the technology chosen
Ensure the integration of engineering tools with existing systems and workflows
Participate in testing and quality assurance activities to ensure software reliability and compliance to Nuclear Safety requirements
Break down problems and estimate time for development tasks
Technical Expertise:
A general understanding of engineering disciplines, such as mechanics, aerodynamics, thermodynamics, heat transfer, structural integrity
Experience with numeric computation and scientific computing tools to solve design, analysis or optimization problems
Experience in developing and maintaining Windows desktop applications (in Fortran, C++, C, Phyton, C#, Java, etc)
Ability to adapt to an existing software structure
Proficiency in traditional and object-oriented programming
Experience with standard modern software development tools and practices, such as source code management, unit testing and continuous integration
Understanding of SDLC (Software Development Lifecycle) and Agile Methodologies, Continuous Integration (CI), Software and Product Security, Scalability, Documentation Practices, refactoring and Testing techniques
Ability to analyse impact of technology choices on the software development life cycle
Personal/Leadership Attributes:
Demonstrates the initiative to explore alternate technology and approaches to solving problems
Persists to completion, especially in the face of overwhelming odds and setbacks
Pushes self for results, pushes others for results through team spirit
Voices opinions and presents clear rationale. Uses data or factual evidence to influence
Takes responsibility for assigned deliverables
Seeks to understand problems thoroughly before implementing solutions. Asks questions to clarify requirements when ambiguities are present.
Adapts to new environments and changing requirements. Pivots quickly as needed
Willing to work with global international teams
Education Qualification
Mechanical/Electronic Engineering with a strong interest in Computer Science or "STEM" Majors (Science, Technology, Engineering and Math) and experience in Engineering Software development or Bachelor/Master's Degree in Computer Science with extensive experience in Engineering Software development
A minimum of 7 years of professional experience in software engineering, with a focus on developing engineering tools or similar applications, or Master's degree with 5 years of experience developing engineering tools or similar applications
In this role, you will:
Maintain and enhance existing tools, ensuring they meet the evolving needs of the user communities
Troubleshoot and resolve issues related to the engineering data, performance, reliability and usability of existing tools
Lead the design, development, and implementation of robust, scalable, and efficient software components
Write clean, efficient, and well-documented code, in line with standard software development practices
Develop and evolve software in a fast paced and agile development environment using the appropriate software development technologies and infrastructure
Define and implement core data structures and their algorithms in the technology chosen
Ensure the integration of engineering tools with existing systems and workflows
Participate in testing and quality assurance activities to ensure software reliability and compliance to Nuclear Safety requirements
Break down problems and estimate time for development tasks
Technical Expertise:
A general understanding of engineering disciplines, such as mechanics, aerodynamics, thermodynamics, heat transfer, structural integrity
Experience with numeric computation and scientific computing tools to solve design, analysis or optimization problems
Experience in developing and maintaining Windows desktop applications (in Fortran, C++, C, Phyton, C#, Java, etc)
Ability to adapt to an existing software structure
Proficiency in traditional and object-oriented programming
Experience with standard modern software development tools and practices, such as source code management, unit testing and continuous integration
Understanding of SDLC (Software Development Lifecycle) and Agile Methodologies, Continuous Integration (CI), Software and Product Security, Scalability, Documentation Practices, refactoring and Testing techniques
Ability to analyse impact of technology choices on the software development life cycle
Personal/Leadership Attributes:
Demonstrates the initiative to explore alternate technology and approaches to solving problems
Persists to completion, especially in the face of overwhelming odds and setbacks
Pushes self for results, pushes others for results through team spirit
Voices opinions and presents clear rationale. Uses data or factual evidence to influence
Takes responsibility for assigned deliverables
Seeks to understand problems thoroughly before implementing solutions. Asks questions to clarify requirements when ambiguities are present.
Adapts to new environments and changing requirements. Pivots quickly as needed
Willing to work with global international teams
Education Qualification
Mechanical/Electronic Engineering with a strong interest in Computer Science or "STEM" Majors (Science, Technology, Engineering and Math) and experience in Engineering Software development or Bachelor/Master's Degree in Computer Science with extensive experience in Engineering Software development
A minimum of 7 years of professional experience in software engineering, with a focus on developing engineering tools or similar applications, or Master's degree with 5 years of experience developing engineering tools or similar applications