What are the responsibilities and job description for the Software Engineer position at Teradata?
Our Company
Teradata is the connected multi-cloud data platform for enterprise analytics company. Our enterprise analytics solve business challenges from start to scale. Only Teradata gives you the flexibility to handle the massive and mixed data workloads of the future, today.
The Teradata Vantage architecture is cloud native, delivered as-a-service, and built on an open ecosystem. These design features make Vantage the ideal platform to optimize price performance in a multi-cloud environment.
Our Team
Teradata SQLE Core Engineering team works with advance database technologies allowing us to build exciting new features that unlock business value for our customers. We are a cloud data analytics platform company, built for a hybrid multi-cloud reality, solving the world’s most complex data challenges at scale. Join the Teradata team as a Software Engineer focused on building cutting-edge software for the SQLE database for both cloud and on-prem offerings. This position is in the SQLE Database File System team within the SQLE Core Engineering organization. As a Software Engineer you will have the opportunity to build new database file system features and extend database capabilities to allow our database enhanced functionality when compared to our competitors. The SQLE file system is a core part of the Teradata database that provides many database functionalities for processing information and extensibility.
Your Business Objectives would include:
-
Collaborate with cross-functional agile teams that include product owners, developers, and front-end, back-end, and quality engineers to conceptualize, build, test and ship software solutions for the next generation of enterprise applications.
-
Knowledge of professional software engineering practices & best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations.
-
Drive technical direction and design of implementations as well as providing guidance to the overall development organization.
-
Perform complex code modification, testing and debugging and be able to solve challenging scalability and integration problems.
-
Interact with engineering teams and partners to support environments handling ongoing requirements and providing one-on-one coaching to teams adopting our services.
-
Identify and propose areas of improvement to enhance operability throughout the software development process.
-
Support customers and partners diagnosing, triaging, and fixing high priority issues.
Qualifications
-
Bachelor’s and Degree in Computer Science or related discipline, with at least three years of related research or industry experience, or
-
Masters in Computer Science or related discipline
-
Coursework should include at a minimum discrete mathematics, software engineering, data structures and algorithms, operating systems, and computer architecture and organization, otherwise working knowledge/experience with subjects mentioned.
-
Strong C/C and Python programming
-
Strong verbal and written communication skills
-
Strong interpersonal skills and strong teamwork.
-
Strong problem solving and debugging skills
-
Familiar with Unix(Linux) and Windows computing environment
-
Experience with cloud-based development and systems.
-
Experience with SQL and database technologies including a thorough understanding of database logical and physical design concepts
Preferred Qualifications
-
Advanced coursework in database, operating systems, file systems, parallel architecture, high performance fault tolerant systems, data storage systems, I/O systems, or similar technologies/disciplines
-
Multi user, multi-tasking server software internals development with emphasis on concurrency and locking protocols
-
Relational database application or internals development with working knowledge of SQL
-
Working knowledge of Unix (Linux, Solaris, HPUX, AIX,…) and Windows development tools (compiler, system calls, debuggers like gdb, visual studio,…) and environment (i.e. shell commands and scripting, editor, MS Word, Outlook, etc)
-
Experienced in developing under GIT, Clearcase or similar source control products
-
Effectively debug and work with low level data structures (hex dumps of data structures in memory and on storage devices)
-
Familiar with Software Development Life cycle and processes
-
Experience using Agile software development methods and tools
-
Top-notch programming skills in C, C , Python, SQL, Scripting
-
Experience with Teradata (or other RDMS) and NoSQL technologies.
-
Experience with public cloud services such as AWS, Azure, Google.
-
Experience with x86 Intel and ARM based platforms.
-
Experience with supporting mission critical, 24x7 systems.
Basic Qualifications
- Bachelor’s degree or 4 years of related experience
Teradata invites all identities and backgrounds in the workplace. We work with deliberation and intent to ensure we are cultivating collaboration and inclusivity across our global organization. \n\nWe are proud to be an equal opportunity and affirmative action employer. We do not discriminate based upon race, color, ancestry, religion, creed, sex (including pregnancy, childbirth, breastfeeding, or related conditions), national origin, sexual orientation, age, citizenship, marital status, disability, medical condition, genetic information, gender identity or expression, military and veteran status, or any other legally protected status.