logo

JobNob

Your Career. Our Passion.

Neysa Networks - System Programmer - C/C++


Neysa Networks Private Limited


Location

Mumbai | India


Job description

DAY IN THE LIFE :In this role, you will :Work with time-sensitive and streaming data for analysis, filtering and sorting, for example, the C++ STLCreate parallel processing architectures which can scale up and down on demandInteract with external systems and handle their idiosyncrasies in a live, data-heavy, time-constrained environmentProvide a resilient and predictable platform for upper-layer applicationsCome up with bespoke solutions for real-world data handling problemsHandle cryptography and communication security over untrusted channelsMUST HAVE SKILLS :On day one, we'll expect you to :Have a deep understanding of object-oriented programming, socket programming and memory management techniquesHave experience with multi-threaded and multi-core programming and it's associated concurrency, locking and synchronisation techniquesBe aware of interprocess communications (IPC/gRPC) and message queueingBe comfortable with mathematical functions and the associated libraries in system programming. You also should be unafraid to use math to optimise your codeUnderstand synchronous and asynchronous communication, and when to use whatBe comfortable in handling low level byte operationsWHAT SEPARATES THE BEST FROM THE REST :Added bonuses you will need to have :The initiative to work on your own, at your own pace, but on a scheduleThe courage to iterate, re-iterate and the re-re-iterate till you get it right. And then defend your design philosophyThink through all the possible applications of your work, and then making sure it performs awesome in every one of themMaking the right algorithm choices based on design requirementsWrite good, commented and (hopefully) error free code. Logic failures are acceptable, but poor error handling is notWHAT CAN YOU EXPECT : An environment where you can do your best work :The best equipment which complements your talentsThe best tools in the business for you to bring your creations to lifeA great environmentFlexible work hours, and flexible work locations. You will need to be in office thoughThe opportunity to make your mark and shape the futureAnd have fun.THINGS YOU MUST KNOW :C, C++, Java, system programming, stream programming, socket programming, Linux Internals, Hooks and System Call and Kernel APIsLocking and synchronising techniques like mutexes, atomics, deadlocks and races and ways to avoid them"Safe" programming, exception handlingString input/output and manipulation, data structure(hash tables, graphs, stacks, queues, trees, binary trees) and operations on themSystem memory management, instruction reordering and memory orderAn "code based" understanding of the TCP/IP stack and other networking protocolsGREAT IF YOU KNOW :Garbage collection in C++, thread safe and type safe programming, hierarchal exceptional handlingSpecialised algorithms for data collection, analysis and presentationUnderstanding of the REST, protobuf, XML, JSON and other data interchange formatsUnderstanding of cryptographic libraries, key management concepts, symmetric and asymmetric encryptionSTL containers, API service creation, "daemons", operating system services, microservicesWE'LL HELP YOU OUT ON :Web servers, system administration, website management, content management systemsCI/CD, Automation frameworksVersion management tools (ref:hirist.tech)


Job tags



Salary

All rights reserved