Who are we?
Afiniti is the world’s leading applied artificial intelligence and advanced analytics provider. Afiniti Enterprise Behavioral Pairing™ uses artificial intelligence to identify subtle and valuable patterns of human interaction in order to pair individuals on the basis of behavior, leading to more successful interactions and measurable increases in enterprise profitability.
Afiniti operates throughout the world and has measurably driven billions of dollars in incremental value for our clients.
Design and develop C++ Linux based micro services that supports next generation Afiniti algorithms
Contribute in enhancing the overall architecture of the application by using Design pattern and principles.
Implement and benchmark multiple implementations to find better system performance.
Provide peer code reviews and be part of decisioning over technical implementations
Recognize impediments to our efficiency as a team ("technical debt"), propose and implement solutions.
Write unit tests and champion test-driven development approaches.
Work closely with researchers and other key stakeholders
The ideal candidate will have
5 years software development experience in C++ 17, standard libraries, boost lib, taskflow / OpenMP and google test.
Sound knowledge of design patterns and principles.
Hands on experience with DBs access and query writing.
Hands on experience with IPCs (grpc, Protobuf, rabbitMQ) and Shared Memory access.
Knowledge / hands on of graph and network optimization libraries( lemon, ortools ).
Knowledge about SSL and TLS encrypted communication.
Good understanding of json / xml and C++ libraries around it.
Passion for writing clean and performant code
Solid written and verbal communication skills to document and explain complex implementations
Demonstrated ability to manage time independently and take ownership of tasks assigned
Should have good understanding of DevOps or continuous deployment / integration tools like Jenkins, Git, etc
Understanding of docker is preferred
Strong ability to think analytically and a basic familiarity with statistics, Monte Carlo methods, or numerical optimization is a plus
Experience with computational intensive applications is a plus
Education and Qualifications
Degree in Computer Science.
Salary and Package
As well as a competitive base salary dependent on the number of years of experience, we also offer corporate benefits.