Engine (C++) Engineer II - Unified Search
Job Description
About the Role:
We are looking for a colleague to develop and maintain a specialized execution environment that serves as a backend target for compilers also maintained within the Unified Search team. This execution environment is written in C++ and expert level experience with C++ is essential.
What You'll Do:
-
Design and develop highly performant runtime for a low latency event-driven architecture
-
Collaborate with colleagues focusing on language and compiler design
-
Own features from design to delivery to sustained care after release
-
Serve as low level execution and performance expert for the team
-
Collaborate with other teams on cross functional design
-
Understand the larger system architecture and its impact on development and design
What You'll Need:
-
Expertise with C/C++ particularly in developing and debugging a kernel level asynchronous event driven codebase
-
Kernel module development such as device drivers or kernel mode components
-
Willing to develop for multiple operating systems including but not limited to Windows macOS and Linux
-
Testing : unit testing integration / end-to-end testing and associated automation
-
Deliver and accept feedback with grace and courtesy
-
Experience in multi-threaded concurrent systems development : what problems do concurrent systems pose and how do you solve them?
-
Comfortable working in a distributed environment with multiple time zones
Bonus Points:
-
Experience developing code within a well-defined information architecture
-
Code optimization and performance assessment/profiling/testing
-
Familiarity with reading assembly language specifically x64 and/or ARM.
-
Experience with Python
-
Prior experience developing design tools tests and/or test automation.
-
Prior experience with pytest Jenkins or Bamboo in a CI/CD environment
-
Knowledge of low-level operating system internals for one or more of our supported platforms (including Windows macOS and Linux).
-
Experience with real-time and/or embedded operating systems.
-
Experience developing software for high-assurance safety critical or life critical domains
-
Experience with developing for cloud-based or other highly concurrent highly distributed systems
-
Familiarity with one or more query/business intelligence languages (SQL Splunk SPL etc.)
-
Familiarity with generative or formal software methods : model based development domain specific languages formal modeling (As an example we've used tools like TLA+ Agda and domain specific languages in the past to ensure safety and robustness in our designs.
Explore More
Date Posted
04/11/2024
Views
2
Similar Jobs
Senior Site Reliability Engineer - Environment Automation - GitLab
Views in the last 30 days - 0
View DetailsStaff Backend Engineer, Software Supply Chain Security: Secrets Management - GitLab
Views in the last 30 days - 0
View Details