Design, develop, modify, and implement software programming for products (both internal and external) with a focus on surpassing customer expectations, on achieving high quality and on-time delivery. Responsible for ensuring the overall functional quality of the released product on all required platforms and mechanisms. Ability to understand complex products, solutions, and problems. Creates, documents, and executes software designs that may involve complicated workflows or multiple product areas. Technical lead of one or more projects within one area of a product. Provides input to the technical direction for one area of a product. Occasional consults with customers in regard to future upgrades and products. Able to solve complex technical problems. Provides specialized expertise within multiple systems, software disciplines, as well as general knowledge of related disciplines, applications implications, and customer areas. Works with minimal supervision on complex projects with wide latitude for independent judgment. Highly skilled with extensive proficiency and technical expertise.
Responsibilities and Skillsets
The person in this role will be developing software for the Innovation and Research team. The software development activity could be prototype code, researching an emerging technology, developing applications and microservices, testing harnesses, DevOps pipeline steps, and cloud development technology. The person in this role will be on an Agile Scrum team and will participate in a daily scrum meeting, updating story tasks, and providing daily updates to the team.
Documenting design, testing, or story details for a proposed implementation of a software feature or service
Reporting out research findings to the broader team or organization
Implementing software ideas
Writing stories for software implementations
Writing test code for validating software implementations
Developing DevOps pipeline steps and/or DevOps tooling
Agile Scrum activities (daily scrum, updating stories, and tasks, sprint reviews)
Research into a new software technology
Required Knowledge/Skills, Education, and Experience
Bachelor’s degree in Computer Science/Information Technologies
Experience: Minimum of 8 years of experience in software development.
Solid Computer Science fundamentals in object-oriented design, data structures, algorithms, and problem-solving
Proficiency in a modern programming language, preferably in C#
Experience with front-end framework preferably in Angular, React, etc.
Microservice Architecture (modern cloud architecture)
Ability to work well with a team in a fast-paced, dynamic, agile development environment
Excellent written and verbal communication skills
Experience with containerized application with preferable with Kubernetes
Preferred Knowledge/Skills, Education, and Experience
Knowledge of professional software engineering best practices
Knowledge of .net and asp.net ecosystem
Knowledge of Cloud Platforms (AWS, Azure, Google)
Knowledge of relational databases PostgreSQL, SQL, Oracle, etc.
Strong time management skills and the ability to be self-directed
Experience with service-oriented architecture and web application/services development
Experience in building complex, scalable, high-performance software systems that have been successfully delivered to customers
Comfortable with the Linux command line and Git
Sharp analytical abilities and design skills
Experience with distributed computing and enterprise-wide systems
Experience leading and mentoring junior software engineers, and make them more effective, product software engineers
Experience with any unit test framework
Web application hosting technologies Ngnix, IIS, etc.
Experience with progressive UI applications development.
ORM e.g. N-Hibernate and Entity Framework Core
GRPC, Interprocess communication
Experience with enterprise messaging applications.
Organization: Digital Industries
Company: Siemens Industry Software (India) Private Limited
Experience Level: Experienced Professional
Job Type: Full-time