Bosch Global Software Technologies Private Limited is a 100% owned subsidiary of Robert Bosch GmbH, one of the world's leading global supplier of technology and services, offering end-to-end Engineering, IT and Business Solutions. With over 27,000+ associates, it’s the largest software development center of Bosch, outside Germany, indicating that it is the Technology Powerhouse of Bosch in India with a global footprint and presence in the US, Europe and the Asia Pacific region.
Job DescriptionRoles & Responsibilities :
As our new Senior Application Software Engineer you design, implement and test the software according to specifications and architecture.
Key areas of responsibility are:
· Design, code and unit-test the software to implement part of the software in scope of the activities assigned to or selected by the Software Engineer;
· Document the design;
· Decompose the design into manageable work packages for implementation, provide estimations on work packages
· Analyze (sub)system- requirements and derive into component level (or detailed) requirements for the software to be implemented.
· Document the requirements at component level.
· Plan the order of development for work packages, focusing on achieving continuous integration
· Produce Clean Code;
Operate according to Agile principles
QualificationsEducational qualification:
Experience : 5+
Mandatory/requires Skills :
do you have:
· You have a university education in computer or software science at Bachelor level or higher;
· You have at least 5 years of experience in C# ( .NET Framework)
· You have an understanding of the SOLID-principles and how to apply them in software design.
· You have fluent English language skills (verbal and written);
· You are proactive and collaborative
Preferably:
· You have experience/interest to work with C++
· You have experience in debugging/troubleshooting complex systems
· You have experience with audio and video libraries / systems / concepts
· You have a broad interest in Software Development and are familiar with additional programming languages
· You have experience with communication protocols like TCP/IP, Ethernet;
· You have specific knowledge of relevant design & modeling methods like e.g. UML
· You have an understanding of core OS concepts like multi-threading, memory management;