The point where experts and best companies meet
Share
Roles and Responsibilities
In this role, you will:
Apply principles of SDLC and methodologies like Lean/Agile/XP, CI, Software and Product Security, Scalability, Documentation Practices, refactoring and Testing Techniques
Develop and maintain software applications primarily using C++.
Collaborate with system engineers, frontend developers and software developers to implement solutions that are aligned with and extend shared platforms and solutions
Compile and build applications on both Linux and Windows systems.
Design and implement low-level software components with a strong understanding of design patterns.
Break down system designs into class and flow diagrams.
Deliver high-quality code with comprehensive unit and automation tests.
Collaborate with cross-functional teams to define, design, and ship new features.
Troubleshoot, debug, and optimize existing software applications.
Understand performance parameters and assess application performance
Education Qualification
Bachelor's Degree in Computer Science or “STEM” Majors (Science, Technology, Engineering and Math) with a minimum of 3+ years of experience in application development with C++.
Technical Expertise:
In-depth knowledge of the latest C++ standards (C++11, C++14, C++17, C++20).
Familiarity with commonly used C++ libraries such as Boost, STL (Standard Template Library), Qt.
Excellent understanding of build methodologies for C++ code for Linux and Windows systems using CMake, Make, and Visual Studio.
Experience in writing unit, component, and integration tests using GTest, CppUnit
Knowledge of SQL and NoSQL Databases, along with connecting to the databases from C++ applications
Additional knowledge of Python including writing clean, efficient, and maintainable Python code with knowledge of basic Python libraries
Preferred Qualifications:
Experience with version control systems, particularly Gitlab
Familiarity with Agile development methodologies.
Knowledge of continuous integration and continuous deployment (CI/CD) pipelines.
Business Acumen:
Has the ability to break down problems and estimate time for development tasks.
Understands the technology landscape, up to date on current technology trends and new technology, brings new ideas to the team.
Displays understanding of the project's value proposition for the customer. Shows commitment to deliver the best value proposition for the targeted customer.
Learns organization vision statement and decision making framework. Able to understand how team and personal goals/objectives contribute to the organization vision
Personal/Leadership Attributes:
Voices opinions and presents clear rationale. Uses data or factual evidence to influence.
Learns organization vision statement and decision making framework. Able to understand how team and personal goals/objectives contribute to the organization vision.
Completes assigned tasks on time and with high quality. Takes independent responsibility for assigned deliverables.
Has the ability to break down problems and estimate time for development tasks.
Seeks to understand problems thoroughly before implementing solutions. Asks questions to clarify requirements when ambiguities are present.
Identifies opportunities for innovation and offers new ideas. Takes the initiative to experiment with new software frameworks
Adapts to new environments and changing requirements. Pivots quickly as needed. When coached, responds to need & seeks info from other sources.
Write code that meets standards and delivers desired functionality using the technology selected for the project
Inclusion and Diversity
Our total rewards are designed to unlock your ambition by giving you the boost and flexibility you need to turn your ideas into world-changing realities. Our salary and benefits are everything you’d expect from an organization with global strength and scale, and you’ll be surrounded by career opportunities in a culture that fosters care, collaboration and support.
These jobs might be a good fit