Expoint - all jobs in one place

מציאת משרת הייטק בחברות הטובות ביותר מעולם לא הייתה קלה יותר

Limitless High-tech career opportunities - Expoint

IBM Software Developer C/C++ 
India, Karnataka, Bengaluru 
236784463

31.07.2024

Your Role and Responsibilities
We are seeking a detail-oriented and at least 5 to 10 years experienced C/C++ developer proficient in building high-performance applications and has a solid understanding of .NET and related technologies. The ideal candidate will have expertise in optimizing C/C++ applications for both Windows and Linux operating systems, experience with database technologies and knowledge in implementing automated testing frameworks. This role requires a deep experience and understanding of multi-threading, multi-processing, and parallelization. Optimization techniques to process large amount of data including streaming data.

Key Responsibilities:

  • Develop and optimize C/C++ application for high-performance on Windows and Linux platforms.
  • Utilize advanced multi-threading, multi-processing, and process synchronization techniques to exploit all the available computing resource for building high-performance applications.
  • Leverage Git and GitHub for source code management and to foster code collaboration and review processes.
  • Work on continuous integration and delivery (CI/CD) pipelines, developing and incorporating automated testing and other common deployment practices.
  • Work with .Net applications integration, relation databases such a MS SQL Server, DB2, Json databases such as MongoDB, and in memory databases.
  • Implement and refine automated testing frameworks such as Google Test, Boost.Test, and CppUnit to ensure code quality and reliability.
  • Collaborate closely with cross-functional teams to troubleshoot complex technical challenges.
  • Stay abreast of the latest trends and technologies in software development, DevOps, and database management.


Required Technical and Professional Expertise

  • 6 to 10 years experience
  • Bachelor’s or Master’s degree in Computer Science, Engineering, or related field.
  • Strong proficiency in C/C++ programming and a solid grasp of software development principles. • Expertise in optimizing applications for Windows and Linux environments, with a strong understanding of operating system fundamentals.
  • Deep Knowledge multi-threading, multi-processing, and synchronization techniques for efficient parallelization and optimization.
  • Understanding of network programming, processing data streams and adherence to security best practices.
  • Extensive experience with SCM tools, particularly Git and GitHub, and familiarity with branching strategies and workflows.
  • Demonstrated knowledge of DevOps practices, including but not limited to CI/CD pipelines, version control, automated testing, and configuration management.
  • Familiarity with .NET framework, .NET Core, ASP.NET, Entity Framework, and other related technologies.
  • Proficient in database technologies, especially MS SQL Server, DB2, NoSQL, in memory databases with knowledge of database design, development, and optimization.
  • Hands-on experience with automated testing frameworks and a commitment to maintaining high code quality through automated tests.
  • Excellent problem-solving abilities and the capacity to work in a fast-paced and dynamic environment.
  • Effective communication and teamwork skills.


Preferred Technical and Professional Expertise

  • Experience with containerization technologies (Docker, Kubernetes).
  • Familiarity with cloud services (IBM Cloud, AWS, Azure, Google Cloud) and their respective management tools.
  • Understanding of TCP/IP, UDP and S3 protocol for fast data transfer over network.