Software Developer Intern (undergraduate)

IBM - San Jose, CA (30+ days ago)3.9


Job Description
IBM is hiring a Software Developer Intern for our San Jose, CA location to work with our Db2 Common Engine Storage Development team. This position is for a 3-month full-time summer internship followed by a 9 month part-time (20 hours per week) internship during the school year. Intern software developers will contribute to the design and implementation of new database warehousing functionality in the Db2 Common Engine. The Db2 engine is the common code base for multiple IBM products run on customer owned hardware (IBM Db2, Db2 Warehouse Private), appliances (IBM Integrated Analytics System), and the cloud (Db2 Warehouse on Cloud). The Db2 engine code is made up of many complex components such as indexing, data management, runtime interpreter, query compiler, and the optimizer. This specific internship position is for the Db2 Common Engine Storage Development team that controls the storage of data including how the data is processed in memory and compressed on disk. The team handles the compression dictionaries and how the data is laid out on disk for optimal performance. The compression is very important for customers to reduce the cost of storing the data and also to have fast query performance. Top responsibilities include designing, coding, unit testing, and function testing future enhancements in the storage and compression areas. In addition, intern developers will investigate and resolve function test, system test, and performance problems.

This internship offers the opportunity to learn valuable/marketable database engine skills and go through the entire software development process from design, code, and test to delivering enhancements that are used by real customers. The Db2 Common Engine Storage Development team has an excellent mix of team members with experience ranging from 1 to over 25 years of experience who have a great track record mentoring interns. The last 2 interns have successfully converted to full-time regular IBM employees at the end of their internship with this group.

If you are passionate about Cloud technology and machine learning, this is the internship for you. You should be enthusiastic and able to learn new skills quickly. Because the technology is very complex, you need to be analytical and enjoy solving complicated problems. In addition, you need to have the patience to get through a steep learning curve while working on projects that last several months in duration. You should also be self-motivated, responsible, not afraid to take on new challenges, hardworking, careful, detail-oriented, and a good team player who wants to help others. You must be enrolled in a undergraduate-level university degree program for the duration of the internship.

Required Technical and Professional Expertise

6 months to 1 year of experience with relational database knowledge (SQL (Structured Query Language), joins, group by), C/C++ (templates, inheritance, classes), operating system concepts (serialization, concurrency, multi-threading), computer science algorithms (sorting, hashing), and data structures (arrays, pointers, hash buckets)
Experience using Linux, Unix, and Windows operating systems
Strong oral and written communication skills

Preferred Tech and Prof Experience

6 months to 1 year of Db2 experience and knowledge required for specific debugging tools (db2dart, db2pd, db2trace, Totalview), code/defect/document repository tools (Rational Clearcase, Clearquest, TeamReview), and scripting languages for function testcases (PERL)

EO Statement
IBM is committed to creating a diverse environment and is proud to be an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, age, or veteran status. IBM is also committed to compliance with all fair employment practices regarding citizenship and immigration status.