Our Company
At Teradata, we believe that people thrive when empowered with better information. That’s why we built the most complete cloud analytics and data platform for AI. By delivering harmonized data, trusted AI, and faster innovation, we uplift and empower our customers, and their customers, to make better, more confident decisions. The world’s top companies across every major industry trust Teradata to improve business performance, enrich customer experiences, and fully integrate data across the enterprise.
What You’ll Do
As a Staff Software Engineer, you will be a key contributor to Teradata’s High Availability initiatives. In this role, you will join a high-profile team that collaborates closely to design, develop, test, and maintain Teradata’s In-Database Replication offering, a critical business continuity solution for its customers worldwide.
Your responsibilities will span the full product development lifecycle, including requirements analysis, architecture and design, development, testing, and ongoing maintenance of new and existing features. You will also engage with the associated technologies and environments necessary to ensure successful, high-quality product delivery.
As time and priorities permit, you may also provide support for released products, contributing to overall product stability and customer satisfaction.
Who You'll Work With
This is an individual contributor role where you will work with best-in-class product engineering team members and Architects, reporting to a Senior Engineering Manager.
What Makes You a Qualified Candidate
- 8 to 10 years of working experience as a Software Developer.
- Experience with large-scale, enterprise grade software development in C/C++ programming language, including:
-
- Low level TCP/IP protocol
-
- Inter-process and multi-threaded communications
-
- Debugging multi-threaded applications
- Strong data structure, multi-threading and algorithms fundamentals.
- Multi-cloud and On Premises platforms exposure.
- Very good understanding of common public cloud technologies - storage, communication, and security.
- Knowledge of SQL and understanding of relational databases, including Referential Integrity, Columnar vs. Row Storage, Triggers, and Stored Procedures.
- Strong background in database internals and analytics through working exposure.
- Knowledge of diverse concepts and techniques for creating systems with High Availability and Resilience.
- Knowledge of modern storage options, including objects stores, sharded data, and data replication techniques.
- Knowledge of low-level memory management, leak detection, use of Valgrind.
- Performance profiling analysis skills.
- Proficiency in AI concepts and tools, including practical experience in integrating AI-driven solutions or leveraging AI frameworks for software development.
- Knowledge of Teradata Database (strongly preferred and will be an added advantage).
What You Will Bring
- Analyzing current systems to find flaws that can jeopardize cloud or network security.
- Maintaining applications and infrastructure for cloud-based platforms.
- Exposure to and knowledge of cloud technologies, including cloud scripting languages and libraries.
- Low level processor optimization for Intel and ARM processors.
- Concurrency concepts: lock-free vs. lock-based tradeoffs, atomics/memory model, deadlock/starvation diagnosis.
- Understanding of message brokers and messaging.
- Experience with full life cycle development skills - Designing, Developing, Coding, Testing and debugging system software.
- Use of Agile methodologies and tools.
- Strong written and oral communication skills.
- Good analytical and logical skills. Strong troubleshooting & debugging skills on Linux.
- Self-motivation and self-organizing skills, with a high capacity for rapid learning and having meticulous attention to detail.
- Technical support skills when communicating with customers and customer-facing personnel.
- Test development skills for both unit and functional tests.
- Knowledge of QA automation frameworks and tools, including understanding how automated test scripts are written and integrated into CI/CD pipelines.
#LI-PG1
Why We Think You’ll Love Teradata
We prioritize a people-first culture because we know our people are at the very heart of our success. We embrace a flexible work model because we trust our people to make decisions about how, when, and where they work. We focus on well-being because we care about our people and their ability to thrive both personally and professionally. We are committed to actively working to foster an inclusive environment that celebrates people for all of who they are.