Difference between revisions of "Interns/Projects"

From fd.io
Jump to: navigation, search
(Project Ideas)
 
(22 intermediate revisions by 7 users not shown)
Line 1: Line 1:
 
{{DISPLAYTITLE:<span style="position: absolute; clip: rect(1px 1px 1px 1px); clip: rect(1px, 1px, 1px, 1px);">{{FULLPAGENAME}}</span>}}
 
{{DISPLAYTITLE:<span style="position: absolute; clip: rect(1px 1px 1px 1px); clip: rect(1px, 1px, 1px, 1px);">{{FULLPAGENAME}}</span>}}
 +
[[File:LFN Internships Image.png|thumb]]
  
=== Project Ideas ===
+
==Onboarding==
Mentors, pleases submit your Project Proposal Ideas following the template below.
+
[[ LFN Mentorship Onboarding | LFN_Mentorship_Onboarding ]]
<br />
+
 
Interns, please review the [[Interns#Intern_Proposal_Guidelines|Intern Project Guidelines]] before submitting your project proposals.
+
==2023==
** Not all all Mentor or Intern projects will be accepted as we have a limited number of Internships available.
+
https://wiki.lfnetworking.org/display/LN/Mentorship+Projects
<br />
+
 
 +
* [https://wiki.lfnetworking.org/display/LN/LFN+Mentorship+project+for+FD.io+web+site+UX+Improvements LFN Mentorship project for FD.io web site UX Improvements]
 +
 
 +
==2019 ==
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px">
 +
 
 +
==== Software Engineer working on CSIT for ARM hardware in FD.io CPL ====
 +
<div class="mw-collapsible-content">
 +
* '''Title:''' Software Engineer: CSIT for Arm flavor hardware in FD.io CPL
 +
* '''Description:''' Looking for an intern to help port existing test scripts to arm based hardware in CPL(community performance lab)
 +
* '''Additional Information:''' 
 +
* '''Desirable Skills:''' Familiarity with Python, Linux, Robot testing framework. Experience with performance testing, Arm architecture will be very helpful.
 +
* '''Expected Outcome:'''  Testing cases/scripts for Arm hardware in FD.io CPL
 +
* '''Difficultly:''' Medium to Hard
 +
* '''Mentors:''' George Zhao<george.y.zhao@huawei.com>, Khemendra Kumar <khemendra.kumar@huawei.com>
 +
* '''Additional Contacts:''' gzhao on IRC
 +
</div>
 +
</div>
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px">  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px">  
Line 12: Line 30:
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
 
* '''Title:''' Provide a short but descriptive title of what the intern project is
 
* '''Title:''' Provide a short but descriptive title of what the intern project is
* '''Description:''' Provide at least two or three paragraphs describing the task. Include the problem/opportunity in need of effort, as well as a description of the task to fix the problem or realize the opportunity. If there is a probable implementation path... "this will need steps X, Y, and Z to be completed" please describe it. If part of the task is evaluating one or more potential implementation paths and selecting/executing on one of them, please describe the options and the potential paths to be explored.
+
* '''Description:''' Looking for an intern to help port existing test scripts to arm based hardware in CPL(community performance lab)Provide at least two or three paragraphs describing the task. Include the problem/opportunity in need of effort, as well as a description of the task to fix the problem or realize the opportunity. If there is a probable implementation path... "this will need steps X, Y, and Z to be completed" please describe it. If part of the task is evaluating one or more potential implementation paths and selecting/executing on one of them, please describe the options and the potential paths to be explored.
 
* '''Additional Information:'''  Provide links to bugzilla entries, release-plan notes, and/or other web-references that would be helpful information to potential interns.
 
* '''Additional Information:'''  Provide links to bugzilla entries, release-plan notes, and/or other web-references that would be helpful information to potential interns.
 
* '''Desirable Skills:'''  List both the skills needed and the tools to be used.  ie. Java programing  with working knowledge of OpenStack Neutron and the principals behind SDN, Openflow, and network overlays.  Experience with mininet and wireshark will also be very helpful.
 
* '''Desirable Skills:'''  List both the skills needed and the tools to be used.  ie. Java programing  with working knowledge of OpenStack Neutron and the principals behind SDN, Openflow, and network overlays.  Experience with mininet and wireshark will also be very helpful.
Line 22: Line 40:
 
</div>
 
</div>
  
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px">
+
==2018 ==
==== Characterizing Kubernetes Networking at Scale ====
+
<div class="mw-collapsible-content">
+
* '''Title:''' Characterize Performance Bottlenecks in Kubernetes which can be addressed by VPP
+
* '''Description:''' There are a number of places at scale where existing solutions to Kubernetes networking problems breakd down.  Intern would develop an open source set of testing to characterize those bottlenecks, apply it to both kernel based and VPP based Kubernetes networking solutions, and report results.
+
* '''Additional Information:'''  Example: Slide 13 of https://www.slideshare.net/LCChina/scale-kubernetes-to-support-50000-services
+
* '''Desirable Skills:''' Ability to write tests in a language like Python, attention to detail.  Kubernetes skills a plus.  Linux skills a must.
+
* '''Expected Outcome:'''  Open Sourced tooling for characterizing performance at scale of Kubernetes Networking given kernel and VPP implementations.
+
* '''Difficultly:''' Easy
+
* '''Mentors:''' Ed Warnicke <eaw@cisco.com>
+
* '''Additional Contacts:''' edwarnicke on FreeNode IRC
+
</div>
+
</div>
+
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px">
==== Getting Started Guide for a Software Engineer ====
+
==== Getting Started Guide for a Software Engineer -- (PROJECT COMPLETED) ====
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
 
* '''Title:''' Getting Started Guide for a Software Engineer  
 
* '''Title:''' Getting Started Guide for a Software Engineer  
Line 51: Line 57:
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px">
==== Getting Started Guide for a K8s DevOps Engineer ====
+
 
 +
==== Getting Started Guide for a K8s DevOps Engineer -- (PROJECT COMPLETED) ====
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
 
* '''Title:''' Getting Started Guide for a K8s DevOps Engineer
 
* '''Title:''' Getting Started Guide for a K8s DevOps Engineer
Line 65: Line 72:
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px">
==== Getting Started Guide for a OpenStack DevOps Engineer ====
+
==== Getting Started Guide for a OpenStack DevOps Engineer -- (PROJECT COMPLETED) ====
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
 
* '''Title:''' Getting Started Guide for a K8s DevOps Engineer
 
* '''Title:''' Getting Started Guide for a K8s DevOps Engineer
Line 78: Line 85:
 
</div>
 
</div>
  
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px">
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px">  
=== Create State of the Art Documentation for FDIO ===
+
==== Create State of the Art Documentation for FDIO -- (PROJECT COMPLETED)====
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
 
+
* '''Title:''' Create State of the Art Documentation for FDIO
 
* '''FDIO Description:''' (Fast data - Input/Output) is a collection of several projects and libraries to amplify the transformation to support flexible, programmable and composable services on a generic hardware platform. FD.io offers the Software Defined Infrastructure developer community a landing site with multiple projects fostering innovations in software-based packet processing towards the creation of high-throughput, low-latency and resource-efficient IO services suitable to many architectures (x86, ARM, and PowerPC) and deployment environments (bare metal, VM, container).
 
* '''FDIO Description:''' (Fast data - Input/Output) is a collection of several projects and libraries to amplify the transformation to support flexible, programmable and composable services on a generic hardware platform. FD.io offers the Software Defined Infrastructure developer community a landing site with multiple projects fostering innovations in software-based packet processing towards the creation of high-throughput, low-latency and resource-efficient IO services suitable to many architectures (x86, ARM, and PowerPC) and deployment environments (bare metal, VM, container).
* '''Description:''' The goal is to create state of the art documentation for FDIO. However, this is much more than a documentation project. By the end of the internship we expect to go live with the new web site. To do this we expect the developer to use the current documentation to install, build, debug and possibly write a module for FDIO. In the process the developer will improve, convert and create complete and accurate FDIO documentation. The developer to should spend about 50% of his/her time coding and 50% documenting. Depending on the skill level and expertise of the developer we expect we can find the appropriate place in FDIO to focus on. We will be flexible.
+
* '''Description:''' Create state of the art documentation for FDIO. However, this is much more than a documentation project. By the end of the internship we expect to go live with the new web site. To do this we expect the developer to use the current documentation to install, build, debug and possibly write a module for FDIO. In the process the developer will improve, convert and create complete and accurate FDIO documentation. The developer to should spend about 50% of his/her time coding and 50% documenting. Depending on the skill level and expertise of the developer we expect we can find the appropriate place in FDIO to focus on. We will be flexible.
 
* '''Additional Information:'''
 
* '''Additional Information:'''
  

Latest revision as of 21:13, 23 May 2023

LFN Internships Image.png

Onboarding

LFN_Mentorship_Onboarding

2023

https://wiki.lfnetworking.org/display/LN/Mentorship+Projects

2019

Software Engineer working on CSIT for ARM hardware in FD.io CPL

  • Title: Software Engineer: CSIT for Arm flavor hardware in FD.io CPL
  • Description: Looking for an intern to help port existing test scripts to arm based hardware in CPL(community performance lab)
  • Additional Information:
  • Desirable Skills: Familiarity with Python, Linux, Robot testing framework. Experience with performance testing, Arm architecture will be very helpful.
  • Expected Outcome: Testing cases/scripts for Arm hardware in FD.io CPL
  • Difficultly: Medium to Hard
  • Mentors: George Zhao<george.y.zhao@huawei.com>, Khemendra Kumar <khemendra.kumar@huawei.com>
  • Additional Contacts: gzhao on IRC

Template/Sample

  • Title: Provide a short but descriptive title of what the intern project is
  • Description: Looking for an intern to help port existing test scripts to arm based hardware in CPL(community performance lab)Provide at least two or three paragraphs describing the task. Include the problem/opportunity in need of effort, as well as a description of the task to fix the problem or realize the opportunity. If there is a probable implementation path... "this will need steps X, Y, and Z to be completed" please describe it. If part of the task is evaluating one or more potential implementation paths and selecting/executing on one of them, please describe the options and the potential paths to be explored.
  • Additional Information: Provide links to bugzilla entries, release-plan notes, and/or other web-references that would be helpful information to potential interns.
  • Desirable Skills: List both the skills needed and the tools to be used. ie. Java programing with working knowledge of OpenStack Neutron and the principals behind SDN, Openflow, and network overlays. Experience with mininet and wireshark will also be very helpful.
  • Expected Outcome: List the deliverable(s) (features/application(s)/report(s) etc.) expected
  • Difficultly: Easy/Medium/Hard
  • Mentors: John Doe <john.doe@notarealemailaddress.com>, Jane Smith <JSmith@alsonotarealaddress.com>
  • Additional Contacts: Identify the IRC channel(s) and mailing list(s) where potential interns can ask questions and further interact with members of FD.io project they would be working with.

2018

Getting Started Guide for a Software Engineer -- (PROJECT COMPLETED)

Getting Started Guide for a K8s DevOps Engineer -- (PROJECT COMPLETED)

  • Title: Getting Started Guide for a K8s DevOps Engineer
  • Description: Looking for an intern to document a K8s DevOps Engineer Getting Started Guide for FD.io VPP. This should document installing and configuring K8s, Contiv-VPP and VPP and configuring all of these pieces of software to work together.
  • Additional Information:
  • Desirable Skills: Familiarity with Linux, Containers, Operating System Packaging, installing packages etc.
  • Expected Outcome: Upstream doxygen document on Getting Started with FD.io
  • Difficultly: Easy
  • Mentors: Ray Kinsella <ray.kinsella>
  • Additional Contacts: mortderire on FreeNode IRC

Getting Started Guide for a OpenStack DevOps Engineer -- (PROJECT COMPLETED)

  • Title: Getting Started Guide for a K8s DevOps Engineer
  • Description: Looking for an intern to document a OpenStack DevOps Engineer Getting Started Guide for FD.io VPP. This should document installing and configuring OpenStack, Networking-VPP and VPP and configuring all of these pieces of software to work together.
  • Additional Information:
  • Desirable Skills: Familiarity with Linux, Virtual Machines, Operating System Packaging, installing packages etc.
  • Expected Outcome: Upstream doxygen document on Getting Started with FD.io
  • Difficultly: Easy
  • Mentors: Ray Kinsella <ray.kinsella>
  • Additional Contacts: mortderire on FreeNode IRC

Create State of the Art Documentation for FDIO -- (PROJECT COMPLETED)

  • Title: Create State of the Art Documentation for FDIO
  • FDIO Description: (Fast data - Input/Output) is a collection of several projects and libraries to amplify the transformation to support flexible, programmable and composable services on a generic hardware platform. FD.io offers the Software Defined Infrastructure developer community a landing site with multiple projects fostering innovations in software-based packet processing towards the creation of high-throughput, low-latency and resource-efficient IO services suitable to many architectures (x86, ARM, and PowerPC) and deployment environments (bare metal, VM, container).
  • Description: Create state of the art documentation for FDIO. However, this is much more than a documentation project. By the end of the internship we expect to go live with the new web site. To do this we expect the developer to use the current documentation to install, build, debug and possibly write a module for FDIO. In the process the developer will improve, convert and create complete and accurate FDIO documentation. The developer to should spend about 50% of his/her time coding and 50% documenting. Depending on the skill level and expertise of the developer we expect we can find the appropriate place in FDIO to focus on. We will be flexible.
  • Additional Information:
  • Desirable Skills: C, Python, Sphinx, readthedocs, git
  • Expected Outcome:
  • Go live with the new Website
  • Developer should have written at least 1 module, fixed some issues
  • Skills Acquired:
  • Developer will get a great overview of many sections of FDIO
  • Developer will learn to write State of The Documents (an important and overlooked skill)
  • Developer will enhance his/her Python, "C" programming skills
  • Difficulty: Medium