<?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="agustin">
    <name>Agustin Benito Bethencourt</name>
    <username>abeenitobethencourt</username>
    <title>Oniro Program Manager</title>
    <twitter>toscalix</twitter>
    <image>images_staff/agustin.png</image>
    <description>
      <![CDATA[
      <p>Agustín joined the Eclipse Foundation in August 2021 as Program Manager. 
      Remoter by heart, he is based in Málaga, Spain. Agustín
      has been involved in different Open Source projects and organizations for +18
      years. He also enjoys basketball, barbecues and travelling around 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="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="gesine">
    <name>Gesine Freund</name>
    <username>gesinef220201</username>
    <image>images_staff/gesine.jpg</image>
    <title>Corporate Executive Assistant</title>
    <description>
      <![CDATA[<p>Gesine joined the Eclipse Foundation in February 2022. In her spare time, Gesine is an avid runner, who enjoys road and trail running throughout the seasons. She loves to travel, try new recipes, entertain family and friends, and relax in her forest garden.</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="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="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="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="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>

  <staffmember id="samantha">
    <name>Samantha Carter</name>
    <title>Office Manager</title>
    <image>images_staff/samantha_carter.jpg</image>
    <description><![CDATA[
      <p>Outside of the office, Samantha enjoys many hobbies such as music/singing, creating/trying new recipes, and riding her motorcycle. As an avid animal fan, she will always stop to pet any dog that’s willing, and loves her two cats!</p>
      ]]>
    </description>
  </staffmember>
  
</staffmembers>
