Teradata empowers companies to achieve high-impact business outcomes through analytics. With a powerful combination of Industry expertise and leading hybrid cloud technologies for data warehousing and big data analytics, Teradata unleashes the potential of great companies. Partnering with top companies around the world, Teradata helps improve customer experience, mitigate risk, drive product innovation, achieve operational excellence, transform finance, and optimize assets. Teradata is recognized by media and industry analysts as a future-focused company for its technological excellence, sustainability, ethics, and business value.
The Teradata culture isn’t just about one kind of person. So many individuals make up who we are, making us that much more unique. It’s what sets apart the dynamic, diverse and collaborative environment that is Teradata. But even as individuals, there’s one thing that we all share —our united goal of making Teradata and our people, the best we can be.
Teradata R&D Labs is seeking an experienced software engineer to join our distributed computing engine development team. As a member of the parallel engine team, the candidate will lead other members of the team to design and implement various engine components of Aster’s highly scalable platform. The candidate will contribute to the development and improvement of Aster’s world-class analytic engine capable of running relational, statistics, and machine learning functions at scale.
• Participate in building and enhancing scalable and parallel platform for the execution of analytics and machine learning functions
• Apply strong software development best practices and discipline to work with cross functional groups to deliver high quality products
• Address challenges of data processing across a distributed data processing platform on modern hardware architectures and on the cloud
• Tasks will include designing solutions to distributed systems problems, performance optimization, and features development
• Develop client language API (Python and Java) for applications that drive the distributed cluster processing
• Collaborate closely with analytics and UI engineers for end to end design and implementation of the platform features
• Drive the development and support of key features of the platform throughout its life cycle, from conception to support and enhancement
• Experience in C, C++, Java, and Python, and mastery in at least one of them
• Ability to conceptualize, design and implement new products
• Effective communication and presentation skills
• Strong understanding of distributed systems and parallel data processing
• Knowledge of relational database and SQL
• Knowledge of language compilers
• Knowledge of operating systems, Linux systems programming, and programming languages
• Experience in building high performance data processing systems
• Ability to prioritize and work on multiple projects
• Experience in leading implementation teams of 3-5 engineers.
• Proven track record for contributing to technical strategy and architecture of products in your organization.
• Experience leading project teams spread across multiple functional organizations.
• Master degree in computer science/engineering with 10+ years of related experience or PhD with 5+ years of related experience.
• Experience in database optimization or execution
• Experience in in-memory data processing systems a plus
• Experience in Hadoop, Spark, and related technologies a plus
• Experience in Docker, Kubernetes and other DevOps technologies a plus
• Experience in distributed file systems (Ceph, HDFS, etc) a plus
*Our total compensation approach includes a competitive base salary, 401(k), strong work/family programs, and medical, dental and disability coverage.
Teradata is an Equal Opportunity/Affirmative Action Employer and commits to hiring returning veterans.