Senior Software Engineer, Platform
Job description
About the role
C3 Ai is seeking a Senior Software Engineer to join the Data organization within the Platform Engineering department to shape the next generation of enterprise AI infrastructure. The role owns the design and delivery of highly scalable data pipelines and abstractions that power petabyte-scale AI applications across global industries. You will drive technical direction for critical platform components, collaborating closely with architects and product teams to turn complex requirements into robust, extensible systems. This position is responsible for developing connectors, file system abstractions, and distributed processing frameworks that enable seamless integration across multi-cloud environments. You will also build and maintain ML-specific data systems such as feature stores and recommendation engines that directly accelerate customer workflows. In addition, you will implement AI/ML models for capabilities like failure prediction and schema inferencing that enhance the platform itself. The role demands strong ownership, test-driven development practices, and consistent delivery within an agile, high-growth environment.
Key facts
What you'll do
Design and implement scalable infrastructure services that support data pipelines at petabyte level scale and beyond.
Abstract data storage interactions for Cassandra, PostgreSQL, Snowflake, and other systems to simplify access patterns for application developers.
Create file system abstractions that unify interactions across AWS S3, Azure Blobs, HDFS, and other storage backends.
Build connectors that enable reliable integration with a wide variety of external data stores and services.
Develop distributed system components that handle stream processing, queueing, batch processing, and analytics engines efficiently.
Maintain high-performance APIs that serve as the foundation for advanced AI and machine learning applications in production.
Deliver features that support distributed computations over massive datasets for demanding ML workflows.
Design and evolve ML-specific data systems including feature stores and behavioral frameworks such as recommendation engines.
Integrate distributed computing technologies like Apache Spark and Ray to enable data exploration and ML workload orchestration.
Integrate with data analysis libraries such as Pandas and Koalas to streamline data manipulation and transformation tasks.
Develop and productionize AI/ML models focused on use cases such as failure prediction and automated data schema inferencing.
Establish frameworks for tracking performance, scalability, and reliability across different platform components.
Collaborate with architects, product managers, and software engineers to align implementation details with business objectives.
Provide actionable insights during technical discussions that influence platform roadmap and architectural decisions.
Write clean, maintainable code using a test-driven methodology to ensure quality and long-term maintainability.
Deliver committed work on schedule by following established agile software development practices and processes.
Requirements
Hold a Bachelor of Science degree in Computer Science, Computer Engineering, or a closely related technical field.
Bring a minimum of 5 years of professional work experience in a fast-paced software company environment.
Demonstrate a strong understanding of core Computer Science fundamentals including algorithms, complexity, and system design.
Show high proficiency in coding with compiled languages such as Java, C++, or C#, while Python is also considered acceptable.
Exhibit strong competency in object-oriented programming, data structures, algorithms, and widely used software design patterns.
Have hands-on experience with version control systems, with Git being a primary example in daily workflows.
Possess direct experience building and operating large-scale distributed systems that span multiple services and data domains.
Gain experience with at least one major public cloud platform such as AWS, Azure, or Google Cloud Platform.
Show familiarity with distributed computing technologies like Hadoop, Spark, and Kafka, including managed cloud variants.
Demonstrate familiarity with modern data science and analysis tools and ecosystems, including libraries such as Pandas and Koalas.
Exhibit strong verbal and written communication skills to articulate technical concepts to both technical and non-technical stakeholders.
Approach problem solving with a methodical mindset, balancing trade-offs between performance, reliability, and development velocity.
Take initiative in learning new technologies and applying them to solve complex platform challenges at enterprise scale.
Embrace collaboration by actively contributing to team discussions and incorporating feedback into iterative improvements.
Maintain attention to detail to ensure that implementations are robust, secure, and aligned with platform standards.