Staff Engineer – S3 Developer
About our group:
This group is developing a new storage software platform designed for cloud storage products and focused on scalability, extensibility and reuse.
About the role – you will:
S3 Staff developer will work with the internal Seagate team, its customers, and the object store industry to develop a resilient, high performing storage platform.
The position requires system development experience and knowledge of Object Storage and/or S3 Server/Application Architecture and design.
Will understand the implementation details of the storage system at the source code level.
Will take complete ownership of the design and development of S3 like Server in C++ and deal with issues including large scale data organization, algorithm scalability, asynchronous communication, efficient concurrency, reliability and fault tolerance.
Will identify, debug performance and reliability issues of the storage system.
Design and development of new features/enhancements/fixes to the source code.
Review of the source code for features and defect fixes.
Develop architecture and designs documents code.
Communicates with team and managers to develop optimal solutions and report progress.
Shares best practices with peer groups.
About you:
Technical Expert in S3 Server/protocol with proven external eminence
Deep systems development experience
Actively pursues opportunities for learning and self-development
Quick learner in adapting new technologies
Your experience includes:
Understanding of storage system architectures: storage media types, communication media and protocols. Typical capacity, throughput and latency values, failure modes.
Working experience with S3 Server technology is highly desired.
Understanding of modern server architectures: processors, caches, cores, NUMA, concurrency control mechanisms.
Thorough understanding of the Java programming language and tools (JDK 7, Maven, Junit)
Thorough understanding of the C++ programming language and tools (compilers, linkers, profilers)
Understanding of the basic UNIX and experience in programming in UNIX environment.
Understanding of and experience with concurrent programming.
Understanding of distributed systems is desired (shared memory vs. message passing, asynchronous systems, two phase commit, Paxos).
Knowledge of LDAP protocol and its functioning is desired.
Location:
Pune,India
Our site in Pune is dynamic, both in our cutting-edge, innovative work, as well as our vibrant on-site food, and athletic and personal development opportunities for our 400+ employees. You can enjoy breakfast, lunch, or dinner from one of four cafeterias in the park. Take a break from your workday and participate in one of our many walkathons or compete against your colleagues in carrom, chess and table tennis. Learn about a technical topic outside your area of expertise at one of our monthly Technical Speaker Series, or attend one of the frequent on-site cultural festivals, celebrations, and community volunteer opportunities.