Summary
✨ AI‑Generated
A software engineering role focused on creating client SDKs, communication layers, compatibility solutions, and developer tooling for complex robotic platforms.
Highlights
Opportunity to build developer tools and SDKs across multiple programming languages for advanced robotic systems.
Description
Your Mission & Challenges
protoc + buf toolchain for client-side code generation; CI pipelines regenerate clients on every proto changePython client SDK: idiomatic wrappers with context managers, async/await variants, IDE completion stubs, pip wheels published to internal PyPIC++ client SDK: RAII channel lifecycle, async, language-idiomatic exception hierarchy, Conan/vcpkg packagesJava client SDK: builder patterns for requests, CompletableFuture, Maven Central artifactsChannel lifecycle handling across languages: timeouts, deadline propagation, reconnection logic, TLS/mTLS configurationgRPC status to language-idiomatic exception mapping: hierarchical exception types with semantically meaningful subclassesClient/server version-skew compatibility tables—published policies on client-server version support, automated compatibility testsSemantic versioning aligned with the platform architect, deprecation policy enforcement with linter warnings, migration guidesSimulation-mode toggle inside the client: same proto interface, simulation backend for offline app developmentObservability hooks per language: structured logging, OpenTelemetry tracing context propagation, Prometheus client metricsReference example applications per language demonstrating canonical patterns: pick-and-place, mode switching, fault recovery, telemetry streamingAuto-generated documentation per language: Sphinx (Python), Doxygen (C++), Javadoc (Java); examples kept in sync with API surfaceInternal customer onboarding: skill bundles, evaluation harnesses, R&D notebooks, demo apps—all start from your reference templateRFC co-review with the Robot Platform Integration Engineer on every proto change
What We Can Look Forward To
Developer experience with platform SDKs—has shipped client libraries used by external or internal customers.Proficient in at least two: modern Python (typing, asyncio, pyproject.toml/wheels), modern C++ (17/20, async patterns, build systems), Java (CompletableFuture, Maven build).Hands-on with gRPC ecosystem: protoc, buf, grpc-python, grpc-java, grpc-cpp—has implemented production clients.Multi-language packaging: manylinux pip wheels, Conan or vcpkg recipes, Maven Central publishing—experienced with full CI pipelines.API design fluency: gRPC/REST/GraphQL, semantic versioning, deprecation policy authorship, backwards-compatibility analysis.Documentation tooling: Sphinx, Doxygen, MkDocs; capable of owning end-to-end documentation deliverables.Cross-language async patterns: understands trade-offs among sync, async, and streaming gRPC across languages and their ergonomic differences
Nice to have
Familiarity with robotics or industrial control to discuss latency and timing semantics with robot platform engineersExperience writing language bindings for a native library (PyBind11, JNI, SWIG, cppyy)Authored OpenTelemetry instrumentation libraries across multiple languagesWorking knowledge of ROS 2 client library design (rclpy / rclcpp)Written a developer-portal API reference or SDK tutorial series for external developers