The Parallel Systems Research Group in Bangalore India is looking to recruit candidates with a deep understanding and proven skills in compiler technologies, for its research and development activities. It is also necessary for the candidate to have work experience in, or an in-depth understanding of software development, with excellent programming skills.
Specifically, the candidate is required to have the following skills: excellent programming skills in at least one of C#/C/C++. Knowledge of optimizing compilers (and compiler optimizations on programs) is a must. The candidate should also possess an excellent understanding of data structures. Knowledge of algorithms is a plus. A mathematical background with experience in formal mathematical methods, models and proofs (formal verification) is a requirement, especially in relation to the field of computer science. It is desirable that the candidate also has a good understanding of GCC/CLANG optimizations. Knowledge of program profiling methodology and tools (e.g. gprof/Valgrind/PAPI, etc.) is also good to have. Furthermore, knowledge of Graph Theory (related to computer science), reverse engineering and computer architectures, is a plus.
The candidate is expected to apply their experience and technological insight innovatively to Siemens applications and solutions to enable the delivery of cutting-edge software application performance. The candidate is required to perform an R&D role in the design, development and optimization of compilers and compiler related IDEs (Integrated Development Environments). Solutions provided in this role are expected to have very high quality comparable to product level code. Therefore, the candidate is also required to have a good understanding of software engineering and object oriented concepts in general, and be able to apply them to solve business needs. The candidate should be able to create intellectual property usable by Siemens businesses, and /or drive publications out of their work wherever feasible.