Jump to: navigation, search

Difference between revisions of "Internship ideas"

(Coding: Added egafford's Pluggable Data Sources for Sahara internship idea)
m (Coding)
Line 65: Line 65:
 
  DESCRIPTION= About the project: OpenStack Sahara's data sources allow users to specify locations which elastic data processing jobs can use for input and output (such as HDFS, Swift, and Manila). At present, the set of allowable data sources is hardcoded into the application. Using the Stevedore plugin framework, you will redesign the way Sahara jobs interact with data sources to allow developers to easily "plug in" new data sources and have them work reasonably seamlessly. Note that if you are able to complete this task quickly, you can move on to make other EDP components pluggable as well, including job types (like Java, MapReduce, and Spark) and job engines (like Oozie, Spark, and Storm.) Completing this task would be a huge improvement for the ease with which developers can understand and extend Sahara's EDP framework. |
 
  DESCRIPTION= About the project: OpenStack Sahara's data sources allow users to specify locations which elastic data processing jobs can use for input and output (such as HDFS, Swift, and Manila). At present, the set of allowable data sources is hardcoded into the application. Using the Stevedore plugin framework, you will redesign the way Sahara jobs interact with data sources to allow developers to easily "plug in" new data sources and have them work reasonably seamlessly. Note that if you are able to complete this task quickly, you can move on to make other EDP components pluggable as well, including job types (like Java, MapReduce, and Spark) and job engines (like Oozie, Spark, and Storm.) Completing this task would be a huge improvement for the ease with which developers can understand and extend Sahara's EDP framework. |
 
  DIFFICULTY= Medium|
 
  DIFFICULTY= Medium|
  TOPICS=
+
  TOPICS= Major topics include:
 
* Big Data frameworks (you'll learn how Hadoop, Spark, and Storm run data processing jobs)
 
* Big Data frameworks (you'll learn how Hadoop, Spark, and Storm run data processing jobs)
 
* Refactoring (the art of changing the design of existing code to make it more understandable and extensible)
 
* Refactoring (the art of changing the design of existing code to make it more understandable and extensible)

Revision as of 18:20, 23 September 2016


To submit new ideas please consider creating a new page and use the Template:InternshipIdea (instructions are provided on that page) and you can see how a sample idea page would look like. The pages created with such template are listed on Category:Internship_idea.


List of Ideas for Internships

The OpenStack Foundation has multiple sources for internships, from Outreachy to Google Summer of Code and other opportunities. This page collects the ideas for candidate interns to work on.

Applicants may not have ever worked on FLOSS before and have different levels of competence. Since we have different programs, add here ideas that can be completed by inexperienced contributors, developers or other fields (marketing, communication, graphic design, and anything that may be useful for OpenStack and to include new people in this community).


Coding

Keystone/Infra - Improving Keystone jobs for new scenarios

We want to make sure the currently jobs on Jenkins cover the new features on Keystone, such as fernet tokens, v3 API and functional tests

Difficulty Medium
Topics Keystone, Infra, CI
Required skills Python
Extra skills Tests on CI, but we'll teach you
Mentor raildo
Status Open
Program December 2016 - March 2017


Swift/Swift3 - Improve S3 compatibility layer

Swift3 Middleware for OpenStack Swift, allows access to OpenStack swift via the Amazon S3 API

Difficulty Medium
Topics Swift
Required skills Python
Extra skills familiarity with HTTP protocols
Mentor notmyname
Status Open
Program December 2016 - March 2017


Kuryr-Kubernetes

Add introspection HTTP REST points to the Kubernetes API watchers

Difficulty Medium
Topics OpenStack Kuryr, Kubernetes, Flask, HTTP
Required skills Python
Extra skills API design
Mentor apuimedo on IRC channel #openstack-kuryr @ freenode
Status Looking for candidates.
Program December 2016 - March 2017


Zun

Nova integration for Zun, General improvements

Difficulty Medium
Topics OpenStack Zun, OpenStack Nova, Oslo etc
Required skills Python
Extra skills
Mentor dims on IRC channel #openstack-zun @ freenode
Status Looking for candidates.
Program December 2016 - March 2017


Pluggable Data Sources for Sahara

About the project: OpenStack Sahara's data sources allow users to specify locations which elastic data processing jobs can use for input and output (such as HDFS, Swift, and Manila). At present, the set of allowable data sources is hardcoded into the application. Using the Stevedore plugin framework, you will redesign the way Sahara jobs interact with data sources to allow developers to easily "plug in" new data sources and have them work reasonably seamlessly. Note that if you are able to complete this task quickly, you can move on to make other EDP components pluggable as well, including job types (like Java, MapReduce, and Spark) and job engines (like Oozie, Spark, and Storm.) Completing this task would be a huge improvement for the ease with which developers can understand and extend Sahara's EDP framework.

Difficulty Medium
Topics Major topics include:
  • Big Data frameworks (you'll learn how Hadoop, Spark, and Storm run data processing jobs)
  • Refactoring (the art of changing the design of existing code to make it more understandable and extensible)
  • Encapsulation (the art of locating all the logic required for a certain task together to make code modification easier)
  • Abstraction (the art of discovering what multiple use cases have in common and building a common interface for them)

(Note that the last three here are foundational skills for any engineer; they take a lot of practice even if you understand the concepts, but any seasoned engineer understands that team members who excel at these skills are incredibly valuable.)

Required skills Python
Extra skills
Mentor egafford (Elise Gafford) on IRC channel #openstack-sahara @ freenode
Status Looking for candidates.
Program December 2016 - March 2017