<?xml version="1.0" ?>
<staffmembers version="1.0">

  <staffmember id="mike">
    <name>Mike Milinkovich</name>
    <username>mmilinkovich</username>
    <title>Executive Director</title>
    <twitter>mmilinkov</twitter>
    <image>images_staff/mike.jpg</image>
    <description>
      <![CDATA[<p>Outside of work, Mike's passions are his family, the family cottage and hockey (as a
      coach, player and fan)
      in pretty much that order. When he's not working, or traveling for work, you will probably
      find him involved in one of those three things. </p>
      <p>You can read Mike's blog at
 <a href="http://mmilinkov.wordpress.com/" target="blank">mmilinkov.wordpress.com/</a>.</p>
      ]]>
    </description>
  </staffmember>

  	<staffmember id="mikael">
    <name>Mikaël Barbero</name>
    <username>mbarbero</username>
    <title>Manager, Release Engineering</title>
    <twitter>mikbarbero</twitter>
    <image>images_staff/mikael.jpg</image>
    <description><![CDATA[
      <p>Mika&euml;l is developing cool new stuff and fixing annoying old bugs 
      in the Eclipse Platform. He also helps take care of the released bits 
      of the Eclipse Foundation. When he's not at his computer, he enjoys spending 
      quality time with his family and friends and playing good old video games.</p>
      <p>You can read Mikaël's blog at <a target="_blank" 
      href="https://mikael-barbero.tumblr.com">https://mikael-barbero.tumblr.com</a></p>
    ]]></description>
  </staffmember>
  
  <staffmember id="wayne">
    <name>Wayne Beaton</name>
    <username>wbeaton</username>
    <title>Director of Open Source Projects</title>
    <twitter>waynebeaton</twitter>
    <image>images_staff/wayne.jpg</image>
    <description><![CDATA[
      <p>Wayne works for the Eclipse Foundation where he fills the dual roles of 
      Director of Open Source Projects and Evangelist. He spends his days working 
      with the many Eclipse open source project teams, learning about Eclipse technology, 
      and making sure that everybody knows just how cool it all really is. In 1982, 
      he received the prestigious Chief Scouts Award from then-Governor General Edward 
      Schreyer. In 1984 his team was selected to represent beautiful British Columbia 
      in the Kinsmen Voyageur Relay. In his spare time, he writes down meaningless 
      accomplishments from his youth in a lame attempt to impress the reader.</p>
      <p>Wayne authors the
      <a href="http://waynebeaton.wordpress.com/" target="blank">Eclipse Hints, Tips, and Random Musings</a> blog.</p>
    ]]></description>
  </staffmember>
  
  <staffmember id="gael">
    <name>Gaël Blondelle</name>
    <username>gblondelle</username>
    <title>Managing Director, Eclipse Foundation Europe GmbH and VP Ecosystem Development</title>
    <twitter>gblondelle</twitter>
    <image>images_staff/gael.jpg</image>
    <description><![CDATA[
      <p>Gaël has been involved in Open Source for 15 years with the goal to help companies adopt and develop open source projects and collaborate better. He joined the Eclipse Foundation in 2013 to develop the ecosystem in Europe, and to support the development of Eclipse Working Groups.
      Outside of work, Gaël likes spending time with his family and travelling to visit beautiful places in the world.</p>
    ]]></description>
  </staffmember>
  
    <staffmember id="paulb">
    <name>Paul Buck</name>
    <title>Vice President, Community Development</title>
    <twitter>PaulBuck</twitter>
    <image>images_staff/paulb.jpg</image>
    <description><![CDATA[
      <p>Paul's responsible for the growth and well being of the projects, work groups and the diverse community of members, committers and contributors at Eclipse. 
      Once his work day is complete, you can find him outside running, biking and cross-country skiing the vast network of trails in Gatineau Park... and consuming large post work-out snacks.</p>
    ]]></description>
  </staffmember>

  <staffmember id="sharonc">
    <name>Sharon Corbett</name>
    <username>scorbett</username>
    <image>images_staff/sharonc.jpg</image>
    <title><![CDATA[Program Director, Working Groups Operations]]></title>
    <description>
    <![CDATA[<p>Following a successful career in Intellectual Property Management with Eclipse, Sharon has turned her attention and leadership to Eclipse Foundation Working Groups and associated programs to ensure governance compliance and operational excellence!  Outside of work, Sharon’s main focus continues to be Chihuahua rescue and her two adopted Chi fur babies!</p>
    ]]>
    </description>
  </staffmember>
  
    <staffmember id="mariad">
    <name>Maria Teresa Delgado</name>
    <image>images_staff/maria.png</image>
    <title><![CDATA[Open Source Community Manager]]></title>
    <twitter>mtdelgado</twitter>
    <description>
    <![CDATA[<p>Maria Teresa joined the Eclipse Foundation in 2018. Her role is to manage the Foundation 
    activities within European Research Projects leveraging her experience in the IoT world with the 
    Eclipse Open Source community. When she is not working, she enjoys spending time with family more 
    than anything in the world!!</p>
    ]]>
    </description>
  </staffmember>

<staffmember id="frederic">
    <name>Fr&#233;d&#233;ric Desbiens</name>
    <username>fdesbiens</username>
    <title>IoT and Edge Computing Program Manager</title>
    <twitter>BlueberryCoder</twitter>
    <image>images_staff/frederic.png</image>
    <description>
      <![CDATA[<p>Frédéric Desbiens joined the Eclipse Foundation in February 2019. 
      As the IoT and Edge Computing Program Manager, his job is to help the community innovate by bringing devices and 
      software together. After hours, Frédéric will typically be found reading a history book, playing video games or 
      watching Anime. He also likes going outdoors and playing sports with his friends and family.</p>
      <p>You can follow his blog at:
      <a href="https://blog.blueberrycoder.com" target="blank">https://blog.blueberrycoder.com/</a>
      </p>
      ]]>
    </description>
  </staffmember>

  <staffmember id="zhoufang">
    <name>Zhou Fang</name>
    <username>zhoufang</username>
    <title>Front-End Web Developer</title>
    <twitter>LinkZhouFang</twitter>
    <image>images_staff/zhoufang.jpg</image>
    <description>
      <![CDATA[
      <p>Zhou is the Front-End Web Developer at Eclipse Foundation. Experiencing new things with his family and friends is the core part out of work, including new recipes, movies, games, songs, and so on.</p>
      ]]>
    </description>
  </staffmember>
  
   <staffmember id="zahrafazli">
    <name>Zahra Fazli</name>
    <image>images_staff/zahra.jpg</image>
    <title>Membership Coordinator</title>
    <twitter>zahraeclipse</twitter>
    <description>
      <![CDATA[<p>Zahra is the Membership Coordinator at Eclipse Foundation. Outside of work, Zahra loves to spend time with her friends and family, enjoys writing and traveling. </p>
      ]]>
    </description>
  </staffmember>
  
  <staffmember id="">
    <name>Steph Gottardo</name>
    <image>images_staff/steph.jpg</image>
    <title>Manager, Accounting and Reporting</title>
    <description>
      <![CDATA[<p>Stephanie joined the Eclipse Foundation in March 2021. Outside of work, Stephanie enjoys spending time with her two daughters, seeing friends, traveling and going to the gym.</p>
      ]]>
    </description>
  </staffmember>
  
  <staffmember id="vgriffiths">
    <name>Vanessa Griffiths</name>
    <username>vgriffiths</username>
    <title>Content &amp; Digital Marketing Specialist</title>
    <image>images_staff/vanessa.png </image>
    <description><![CDATA[
      <p>Vanessa is a career marketer with a passion for all things internet. When she's not in front of the computer, Vanessa loves to spend time getting active outside and visiting her huge extended family.</p>
      ]]>
    </description>
   </staffmember>

   <staffmember id="igrimstad">
    <name>Ivar Grimstad</name>
    <username>igrimstad</username>
    <title>Jakarta EE Developer Advocate</title>
    <image>images_staff/ivarg.png </image>
    <twitter>ivar_grimstad</twitter>
    <description><![CDATA[
      <p>Ivar Grimstad is the Jakarta EE Developer Advocate at Eclipse Foundation. He is a Java Champion, JUG Leader, and a frequent speaker at International developer conferences.</p>
      <p>In his spare time, Ivar is usually busy with all sorts of outdoor sports and activities. As a Norwegian, he is born with skis on his feet and when the water is ice-free, he enjoys swimrunning in the Scandinavian archipelagoes. </p>
      ]]>
    </description>
   </staffmember>

  <staffmember id="chrisguindon">
    <name>Christopher Guindon</name>
    <username>cguindon</username>
    <image>images_staff/chris.jpg</image>
    <title>Manager, Web Development</title>
    <twitter>chrisguindon</twitter>
    <description>
      <![CDATA[<p> When he’s not at a computer, which is rare, Chris spends his time with his dog Winston, playing the drums, watching a Habs game or at the top of a hill snowboarding. </p>
      ]]>
    </description>
  </staffmember>

  <staffmember id="fredgurr">
    <name>Frederic Gurr</name>
    <username>fgurr</username>
    <image>images_staff/fred.jpg</image>
    <title>Release Engineer</title>
    <twitter>fr3dg</twitter>
    <description>
      <![CDATA[<p>Fred is a java developer by trade, based out of Cologne, Germany. Responsible for supporting Eclipse projects, focusing on build and release processes.
      In his spare time, Fred can be found kite surfing off the coast of the Netherlands and Spain, or building quadcopters and testing their flight capabilities.</p>]]>
    </description>
  </staffmember>
  
    <staffmember id="susan">
    <name>Susan Iwai</name>
    <username>siwai</username>
    <image>images_staff/susan.jpg</image>
    <title>European Ecosystem</title>
    <description>
      <![CDATA[<p>Susan contributes to the outreach efforts around the European Research projects, as well as conferences and events. 
      She also manages the back office for the European entity. 
      On the other side of the work/life balance, Susan enjoys being outdoors, spending time with friends and family and a round or two of golf.</p>]]>
    </description>
  </staffmember>

  <staffmember id="anne">
    <name>Anne Jacko</name>
    <username>ajacko</username>
    <image>images_staff/anne.jpg</image>
    <title>Conference Queen</title>
    <twitter>annejacko</twitter>
    <description>
      <![CDATA[<p>When not in front of a monitor, Anne prefers activities
      that involve wearing a helmet--horseback riding, skiing,
      and cycling. One of her favorite books is <i>The Chicago Manual
      of Style</i>, so if you need help with the nitpicking
      details of writing in English, she's happy to help.</p>]]>
    </description>
  </staffmember>
  
  <staffmember id="marco">
    <name>Marco Jahn</name>
    <image>images_staff/marco.png</image>
    <title>Manager, Research Projects</title>
    <description>
      <![CDATA[<p>Marco is part of the Eclipse Foundation research team where he helps to turn innovations into successful open source projects. Outside of work, he enjoys skiing, spending time with family and friends and making pizza in his wood-fired oven</p>]]>
    </description>
  </staffmember>
  
   <staffmember id="shawn">
    <name>Shawn Kilpatrick</name>
    <username>skilpatrick</username>
    <image>images_staff/shawn.jpg</image>
    <title>Intellectual Property Analyst</title>
    <twitter>EclipseFdnShawn</twitter>
    <description>
      <![CDATA[<p>Shawn is a member of the Eclipse IP team. When he's not poring over code, 
      Shawn enjoys spending time with his family, playing guitar and singing, fishing, 
      hiking, and boating at the family cottage, and cheering on his beloved Ottawa Senators.</p>]]>
    </description>
  </staffmember>
    
  <staffmember id="philippe">
    <name>Philippe Krief</name>
    <username>pkriefrvi</username>
    <image>images_staff/philippe.jpeg</image>
    <title>Director, Research Relations</title>
    <twitter>phkrief</twitter>
    <description>
      <![CDATA[<p>Philippe manages the Eclipse Foundation contributions to European-funded research 
      projects. When he is traveling, Philippe enjoys photographing the places he visits, and when 
      he isn't on the road, he is having fun with his family, riding his motorcycle or playing 
      jazz with some good friends.</p>]]>
    </description>
  </staffmember>

  <staffmember id="perri">
    <name>Perri Lavergne</name>
    <username>pmisingnameu8g</username>
    <title>Membership Coordination Team Lead</title>
    <twitter>perrieclipse</twitter>
    <image>images_staff/perri.png</image>
    <description> <![CDATA[
      <p>Perri joined the Eclipse Foundation in May 2010. Her focus is on membership retention, management and sales, including sales of our advertising portfolio and sponsorships for our conferences.
Outside of work Perri enjoys spending time with family and friends, medical research, volunteer work for organizations dealing with children with special needs, running, cooking and baking.
Perri hopes to one day accomplish her long time dream of a unique day program for young adults with special needs.</p>
]]>
    </description>
  </staffmember>
  
  <staffmember id="martin">
    <name>Martin Lowe</name>
    <title>Software Developer</title>
    <image>images_staff/martin.png</image>
    <description> <![CDATA[
      <p> Martin is a developer for the Foundation, working with the Web team and helping develop the 
      Eclipse platform. When not working, Martin enjoys tabletop RPGs, video games, and music (both playing and listening).</p>
]]>
    </description>
  </staffmember>
  
  <staffmember id="sharonm">
    <name>Sharon Macdonald</name>
    <username>shmacdonald</username>
    <title>Trademarks Specialist</title>
    <image>images_staff/sharonm.jpg</image>
    <description>
      <![CDATA[<p>
      Sharon is a member of the Eclipse Projects team. She manages all aspects of the Eclipse Foundation's 
      trademark portfolio; this includes prosecution, defence, and monitoring to ensure the marks are fully 
      protected and up to date at all times. When she is not working, 
      she likes to spend her time enjoying the outdoors with her family.</p>
      ]]>
    </description>
  </staffmember>
  
  <staffmember id="jenn">
    <name>Jenn Martel</name>
    <username>jmartelb0n</username>
    <title>Director, Worldwide Operations</title>
     <twitter>jennmartel4</twitter>
    <image>images_staff/jenn.png</image>
    <description>
      <![CDATA[<p>
      Jenn joined the Eclipse Foundation in September 2016. 
      Away from the office, she enjoys spending time with her family, watching her girls play sports and is also a fitness enthusiast.</p>
      ]]>
    </description>
  </staffmember>

 <staffmember id="thabang">
    <name>Thabang Mashologu</name>
    <username>tmashologu</username>
    <title>Vice President, Marketing</title>
     <twitter>T_Mashologu</twitter>
    <image>images_staff/thabang.jpeg</image>
    <description>
      <![CDATA[<p>
      Thabang leads global marketing activities for the Eclipse Foundation. 
      Outside of work, Thabang enjoys spending time with his family, playing tennis and recording music in his home studio.</p>
      ]]>
    </description>
  </staffmember>
  
  <staffmember id="shabnam">
    <name>Shabnam Mayel</name>
    <username>smayel</username>
    <title>Senior Marketing Manager, Cloud Native Java</title>
    <twitter>@mayelshabnam</twitter>
    <image>images_staff/shabnam.png</image>
    <description>
      <![CDATA[<p>
      Shabnam joined the Eclipse Foundation in June 2019 as the Senior Marketing Manager with focus on Jakarta EE, Eclipse MicroProfile and other Cloud native java projects. 
      Her passion is in multimedia marketing, and brand management . Outside of work, she enjoys traveling, watching anime series, hiking and reading. </p>
      ]]>
    </description>
  </staffmember>

 <staffmember id="ralph">
    <name>Ralph Mueller</name>
    <username>rmueller</username>
    <title>Managing Director, Eclipse Foundation Europe GmbH and VP Ecosystem Development</title>
    <twitter>ralph_mueller</twitter>
    <image>images_staff/ralph.jpg </image>
    <description>
      <![CDATA[<p>
      Ralph's role at the Eclipse Foundation is focused on growing
      the Eclipse Ecosystem
      across Europe. </p>
      <p>Ralph's passion outside of work is golf, both as a player
      and as a coach for children just starting the game. He's also
      helped both Mike and Donald to improve their games.</p>
      ]]>
    </description>
  </staffmember>
  
  <staffmember id="tanja">
    <name>Tanja Obradovic</name>
    <username>tobradovic</username>
    <title>Jakarta EE Program Manager</title>
    <twitter>TanjaEclipse</twitter>
    <image>images_staff/tanja.jpg</image>
    <description>
      <![CDATA[<p>
      Tanja joined Eclipse Foundation as Jakarta EE Program Manager June 2018. 
   		Having been involved with Java and Java EE for quite some time, 
   		revitalizing Enterprise Java seems like a good challenge and a great fit for her! 
   		Outside the office, she loves spending time with her family and friends, 
   		enjoys art events, outdoor activities (even in the winter!), 
   		visiting different countries and most of all spending summers on a beach.</p>
      ]]>
    </description>
  </staffmember>
  
  <staffmember id="eric">
    <name>Eric Poirier</name>
    <username>epoirier</username>
    <title>Web Developer</title>
    <twitter>ericpoir</twitter>
    <image>images_staff/eric.jpg</image>
    <description>
      <![CDATA[<p>
      Eric is part of the web development team! Other than working 
      with web stuff, his other passions are mostly constituted 
      of hockey, video games and tv shows.</p>
      ]]>
    </description>
  </staffmember>

  <staffmember id="denis">
    <name>Denis Roy</name>
    <username>droy</username>
    <title>Director, IT Services</title>
    <image>images_staff/denis.jpg</image>
    <twitter>droy_eclipse</twitter>
    <description>
            <![CDATA[<p>In the office, Denis spends his time in front of a Linux command prompt, helping manage the servers, networks and software that run the Eclipse websites. When not at work, Denis enjoys time with his family and friends.</p>]]>
    </description>
  </staffmember>

   <staffmember id="sandy">
    <name>Sandy Thompson</name>
    <title>Finance Specialist</title>
    <image>images_staff/sandy.png</image>
    <description>
      <![CDATA[<p>Sandy is the Finance Speacialist. Outside of work, Sandy enjoys travel, hockey (Go Leafs Go) and spending as much time as possible with her family, especially her grandchildren.</p>
      ]]>
    </description>
  </staffmember>
  
   <staffmember id="karen">
    <name>Karen Vaile</name>
    <title>Office Manager</title>
    <image>images_staff/karen.png</image>
    <description><![CDATA[
      <p>Outside of work, Karen drives her two busy kids around to hockey, softball, and dance. 
      She has managed many of the teams her children have been on and helps coach softball. 
      All too often, she sews name bars onto jerseys the night before the 
      first game of the season and ribbons onto new pointe shoes minutes before the first class.</p>
      ]]>
    </description>
   </staffmember>

  <staffmember id="matt">
    <name>Matt Ward</name>
    <username>mward</username>
    <title>Systems Administrator</title>
    <image>images_staff/matt.jpg </image>
    <description><![CDATA[
      <p>Matt spends his time triaging the Webmaster inbox and putting out
      fires.  If you can't take the heat, stay out of the data center.</p>
      ]]>
    </description>
  </staffmember>

  <staffmember id="paul">
    <name>Paul White</name>
    <username>pwhited3w</username>
    <title>Vice President, Member Services</title>
    <image>images_staff/paul.jpg </image>
    <description><![CDATA[
      <p>Paul’s role at the Foundation is to drive value for our members. 
      His interests outside the Foundation are diverse, but all centre around family, 
      friends, learning (and a bit of teaching) - all mixed with a heavy dose of travel.</p>
      ]]>
    </description>
  </staffmember>

  <staffmember id="shanda">
    <name>Shanda Giacomoni</name>
    <title>Marketing Team Lead</title>
    <image>images_staff/shanda.png</image>
    <description><![CDATA[
      <p>Shanda has spent the majority of her career working in the non-for-profit space, and has a particular interest in tech-based organizations. Outside of the office, she likes spending time with her growing family.</p>
      ]]>
    </description>
  </staffmember>

  <staffmember id="briank">
    <name>Brian King</name>
    <username>bking18m</username>
    <twitter>brianking</twitter>
    <title>Cloud Dev Tools Community Manager</title>
    <image>images_staff/brian-300.jpg</image>
    <description><![CDATA[
      <p>Brian joined the Foundation to work with the Eclipse Cloud Development Tools Working Group to drive the evolution and broad adoption of emerging open source solutions for cloud-based development including Eclipse Che and Eclipse Theia. Brian's hobbies are not too outlandish and include drinking good coffee and walking his dog. However in recent years he has tried sailing and canyoning, and is open to other recommendations.</p>
      ]]>
    </description>
  </staffmember>
  
  <staffmember id="silviamiles">
    <name>Silvia Miles</name>
    <title>Office Manager</title>
    <image>images_staff/silvia.jpg</image>
    <description><![CDATA[
      <p>Silvia joined the Eclipse Foundation in September 2020 as the Office Manager Europe.
Outside of work, Silvia loves to spend time with her family and friends, likes to travel around the world, enjoys sports like running, hiking and fitness.</p>
      ]]>
    </description>
  </staffmember>

  <staffmember id="mkokabi">
    <name>Mehrnaz Kokabi</name>
    <username>mkokabi</username>
    <title>Creative Lead</title>
    <image>images_staff/mehrnaz_kokabi.jpg</image>
    <description><![CDATA[
      <p>Mehrnaz is a member of the Eclipse marketing team. With more than 10 years as a web and graphic designer, Mehrnaz has experience designing and implementing effective creative projects and services for a variety of large public and non-profit organizations. Outside of work, her hobbies include painting, photography, and antique collecting.</p>
      ]]>
    </description>
  </staffmember>

  <staffmember id="hassan">
    <name>Hassan Jaber</name>
    <title>Product Marketing Manager, IoT and Edge</title>
    <image>images_staff/hassan_jabber.jpg</image>
    <description><![CDATA[
      <p>Hassan Jaber joined the Eclipse Foundation in March 2021, as the IoT and edge computing product marketing manager, his job is to translate ideas into successful marketing programs around very tech-savvy communities in the edge computing and IoT world. After hours, Hassan likes to spend time with his family on diverse activities (hiking, reading and traveling).</p>
      ]]>
    </description>
  </staffmember>
</staffmembers>