Software Architect
- Posted 14 hours ago
- Be among the first 20 applicants
Job Description
Qualifications and Desired Skills
- M.C.A/M.S./M.Sc in Computer Science Engineering, or equivalent with a strong software architecture mindset and adept in documentation of work
- Strong understanding and experience in real-time process control, data flow and multi-threaded process control architecture over a heterogeneous compute hardware architecture involving CPU and GPU and networked computers. Software design, i ntegration and testing skills with good level of comfort working on both Windows and Linux operating systems
- Knowledge of working principles and expertise with design of parallel process management in heterogeneous compute architectures involving CPU and GPU is a must
- Experience of working with SQL-based and NoSQL style Databases, file systems
- Whereas the Architect may not be directly overseeing the GUI development, it is expected that all design aspects of the system that might have an impact on the GUI and vice-versa are managed
- Experience developing APIs, communication protocols and integrations with third-party systems and formats
- Ability to create compute system requirements and link up traceability to system level design requirements
- Experience working with WebGL, openCL, openMP, openACC, intel intrinsics, AVX/SSE, cuda, JIT compilers, load-balancing, asynchronous processess, multi-threading, SIMD/MIMD pipelining and other core parallel compute and process paradigms
- Good working knowledge of both python and JavaScript including libraries like GPU.js, Emscripten and other compute accelerator frameworks for client side accelerated computing
- Ability to handle hands-on work on hardware, with an experimental mindset.
- Ability to effectively develop verification and validation strategies and document creation as part of design rigor
- Ability to oversee the systems development from prototype to validated design for production readiness involving the compute architecture
- Good grasp of root-causing compute issues manifested at a systems level to their underlying causes at sub-systems and their interactions
- Strong problem-solving and analytical skills
- Excellent communication and teamwork abilities
- Previous experience in R&D or product development with strong hands on experience on technical design journey from conceptualization to market launch is a must
- Must demonstrate willingness to constantly learn and adapt to growing needs of the domain with a growth mindset
- The role requires strong teamwork and the ability to mentor and work collaboratively in a team effectively to deliver to the assigned deliverable goals as a single cohesive unit
More Info
Job Type:
Industry:
Function:
Employment Type:




