Kernel Sofware Engineer
Primary Job Responsibilities
At eBay, our systems scale to billions of transactions per day, and we run our site 24x7 with 99.99% reliability. We have more than 30 million lines of J2EE / Java based source code. We are leaders in cloud computing, SOA, search, and many other specialties. We love technology, open source, and interacting with the industry. Our employees are friendly, caring people who form great teams, and who understand how to be world class engineers and still have fun and work-life balance.
This position is a lead role in our kernel team, which provides eBay’s foundation software stack. Our latest challenge is to drive internal adoption of OSGi based modularity for eBay’s software, to provide world class dependency management and clean isolation of experiments from hardened code. We’ll drive changes in the eBay codebase to make it OSGi compatible, and to make it ready for Linux and our internal Cloud.
As a team, we have given Java One presentations, influenced the development of IBM’s Geronimo container, and contributed to Apache projects. We are experts in Java and concurrent programming who are proud of our internals knowledge, technology breadth, and intellectual curiosity. We thrive on performance challenges, and are constantly looking for new tools, processes, and programming patterns to do our job better.
Commitment, common sense, passion for quality, intellect, and great people skills are at the top of what we’re looking for. Extremely thorough knowledge of Java, concurrency, systems programming, and computer science fundamentals is an absolute requirement, and we will screen carefully for this. You should have experience in developing software in stringent 24x7 environments, especially for large web operation. You should be flexible – you might be politely helping an entry level engineer with an urgent problem in the morning, and writing an initialization API over Spring in the afternoon. And you should be results and customer focused – because great business results is what eBay and this team are about.
Responsibilities:
- Develop new features such as new programming APIs over supporting infrastructure (HTTP transport, threading, software initialization, etc.)
- Interface with vendors and the open source community to get features and bug fixes in supporting 3rd party software
- Support the kernel technology stacks for the eBay engineering teams and any other customers
- Help advance eBay technical culture and the technical industry through presentations, blogging, conferences, and other social participation
- The usual engineer activities – scoping, prioritizing, planning, bug fix, site rollout, documentation, having fun
Expert in Java: especially profiling/tuning, garbage collection, JMX; long track record of challenging systems level Java development
Expert in J2EE specification and usage patterns: especially Servlets, JSP, Java Beans, JDBC
Expert in multi-threading concepts: deadlock, starvation, J2EE thread allocation, thread safety, concurrency design patterns
3+ years experience working with large-scale server side development in a production environment, especially J2EE web server development
3+ years experience working with other organizations such as Operations, Load & Performance, Security, Build/Release, QA and Training
Knowledge of software processes and lifecycle; agile methodology experience preferred
Relational database experience is a strong plus
Education
Masters Degree or Equivalent
Job ID: 52313BR
Kernel Software Engineer
jpenick@ebay.com