Requirement:

- Strong proficiency in C++, with fair knowledge of the language specification
- Thorough knowledge of the standard library, STL containers, software architecture design patterns and algorithms / API-SDK / cross platform software development with QT / GTK / ElectronJS
- Good understanding of memory management in non-garbage collected environments, hands-on with Valgrind etc memory profiling tools, experience with Secure coding models and practices
- Familiarity with embedded systems design / IoT, low-level hardware interactions and Systems architecture, preferred experience with file systems, I/O peripherals, Embedded Linux / RTOS / device drivers / cross compilation / firmware / middleware etc.
- Knowledge of low-level threading primitives and real-time environments
- Thorough knowledge of Network architecture models (ISO-OSI, TCP-IP) programming e.g. HTTP/ REST/TCP/XMPP client server/peer to peer in C++
- Knowledge of writing native modules for high-level languages such as Node.js, Python, Go, Java etc.
- Proficient understanding of continuous integration / code versioning tools such as Git / SVN / Unit test automation with GTest etc
- Knowledge on virtualization and experience with creating virtualized environments like VMs, Docker containers etc
- Preferred experience with Crypto infrastructure such as Ethereum, Hyperledger, other blockchains, Cryptographic programming/ authentication/ identity management/ Cyber security software / Cryptanalysis / Ethical Hacking and Vulnerability Analysis
- Exposure to R&D culture with disruptive ideas, brainstorming skills, MVP specification, quick proof of concepts to high quality product development, always open to learning new skills / technologies