Senior C++, C# Engineer
Quest Global View all jobs
- Canada
- Permanent
- Full-time
- Role and ResponsibilityCandidate shall be working as Senior Engineer/ Lead Engineer in the Linux client applications development. This is an agile methodology-based program where the candidate shall be participating in designing, implementation and peer code reviews.
- Candidate shall be working with Quest Global and Quest Global’s customer teams in a collaborative development model.
- Apply subject matter knowledge to solve a variety of common business issues. Works on problems of moderately complex scope. Acts as an informed team member providing analysis of information and limited project direction input.
- Exercises independent judgment within defined practices and procedures to determine appropriate action. Follows established guidelines and interprets policies. Evaluates unique circumstances and makes recommendations.
- Designs limited enhancements, updates, and programming changes for portions and subsystems of end-user applications software running on local, networked, and Internet-based platforms.
- Analyses design and determines coding, programming, and integration activities required based on specific objectives and established project guidelines.
- Executes and writes portions of testing plans, protocols, and documentation for assigned portion of application identifies and debugs issues with code and suggests changes or improvements.
- Strong coding skills for application level programming which would involve programming in C++ and C#
- System-level programming which would involve interacting directly with the operating system and low-level components like file systems, device drivers, and kernel subsystems using system APIs and other mechanisms like reading virtual file system.
- Core Concepts: In-depth knowledge of Linux virtual file system like sysfs, devfs, procfs and daemons.
- Shell and Commands:
- C++ Expertise: Proficient in C++14 to C++17 and development on C++
- Multithreading:
- Object-Oriented Concepts:
- Design Patterns and Interface: Familiarity with design patterns and interface concepts.
- Inter-Process Communication (IPC): Knowledge of IPC, shared memory, and socket programming.
- Data Structures: Solid understanding of data structures.
- Proficient in using Git for version control, with hands-on experience in tools like Gerrit and GitHub, and good understanding of git commands.
- Proficient in using library like curl, openssl, programming using REST API
- Nice to Have SkillProfiling of code using various tools.
- Worked on a VM and docker environment.
- Test-driven development experience.
- CICD understanding
- Exposure to cloud (AWS, Azure, Any).
- Debugger – GDB
- Experience in openssl or security libraries
- Additional InformationTeam Player
- Good written and verbal communication skill
- Willingness to cross-skill