Key Responsibilities
Design and develop backend services for a distributed platform
Develop software using C++ and Java
Collaborate with the product architect on architectural decisions
Conduct code reviews
Follow agile practices and take responsibility for delivery quality and timelines Person Specifications
Bachelor's degree in Computer Science, Software Engineering
3+ years of solid experience in software design and development using C++
Strong understanding and hands-on experience in multithreading, performance optimization, memory management, and C++ templates
Experience in unit testing, performance profiling, and debugging (execution and memory)
Solid experience with the standard C++ library
Experience with Java and associated patterns and tools
Experience in python or other scripting languages
Experience in cloud technologies such as K8S, Docker, GCP, AWS, PaaS
Experience in coding assistants such as Cursor/Copilot/Antigravity
Experience or knowledge of AI/ML concepts is a major plus
Experience with build systems such as CMake, Make, or MSBuild, Jenkins, CICD
Hands-on experience with tools such as GDB, GCC, LD, Valgrind, VTune Profiler, Git, and various IDEs/editors
Experience in distributed systems is a plus
Experience in low-latency software design and development is a plus
Experience with C++17 or above is a plus
Experience working in Unix-based systems is a plus
Experience with Boost libraries is a plus
Experience in designing and developing high-performance asynchronous systems is a plus
Knowledge or experience in GPU acceleration (CUDA/OpenCL) or FPGA acceleration (with HLS) is a plus Vendor submissions - 06 months