---
title: Apache NiFi Team
---

<div class="large-space"></div>
<div class="row">
    <div class="large-12 columns">
        <h1 class="nifi-txt">
            <span>
                Apache <span class="ni">ni</span><span class="fi">fi</span> Team
            </span>
        </h1>
    </div>
</div>
<div class="row">
        <p class="description">A successful project requires many people to play many roles. Some members write code, provide project mentorship, or author documentation. Others are valuable as testers, submitting patches and suggestions.</p>
</div>
</div>
<div class="medium-space"></div>
<div class="row">
    <div class="large-12 columns">
        <h3 class="nifi-txt">
            <span>
                PMC Members
            </span>
        </h3>
    </div>
</div>
<div class="row">
    <div class="large-12 columns">
<table>
    <tr>
	<th>Id</th>
	<th>Name</th>
	<th>Affiliation</th>
    </tr>
    <tr>
	<td>aldrin</td>
	<td>Aldrin Piri</td>
	<td></td>
    </tr>
    <tr>
	<td>devriesb</td>
	<td>Brandon DeVries</td>
	<td></td>
    </tr>
    <tr>
	<td>jcarey</td>
	<td>Jason Carey</td>
	<td></td>
    </tr>
    <tr>
	<td>markap14</td>
	<td>Mark Payne</td>
	<td></td>
    </tr>
    <tr>
	<td>joewitt</td>
	<td>Joe Witt</td>
	<td></td>
    </tr>
    <tr>
	<td>jbarnabee</td>
	<td>Jenn Barnabee</td>
	<td></td>
    </tr>
    <tr>
	<td>mcgilman</td>
	<td>Matt Gilman</td>
	<td></td>
    </tr>
    <tr>
	<td>taftster</td>
	<td>Adam Taft</td>
	<td></td>
    </tr>
    <tr>
	<td>tkurc</td>
	<td>Tony Kurc</td>
	<td></td>
    </tr>
    <tr>
	<td>danbress</td>
	<td>Dan Bress</td>
	<td></td>
    </tr>
    <tr>
	<td>bbende</td>
	<td>Bryan Bende</td>
	<td></td>
    </tr>
    <tr>
	<td>busbey</td>
	<td>Sean Busbey</td>
	<td></td>
    </tr>
    <tr>
	<td>jpercivall</td>
	<td>Joe Percivall</td>
	<td></td>
    </tr>
	<tr>
	<td>alopresto</td>
	<td>Andy LoPresto</td>
	<td></td>
    </tr>
    <tr>
        <td>mattyb149</td>
        <td>Matt Burgess</td>
        <td></td>
    </tr>
    <tr>
        <td>afucs</td>
        <td>Andre F de Miranda</td>
        <td></td>
    </tr>
    <tr>
	<td>jskora</td>
	<td>Joe Skora</td>
	<td></td>
    </tr>
    <tr>
        <td>jwing</td>
        <td>James Wing</td>
        <td></td>
    </tr>
    <tr>
        <td>ozhurakousky</td>
        <td>Oleg Zhurakousky</td>
        <td></td>
    </tr>
    <tr>
        <td>ymdavis</td>
        <td>Yolanda M. Davis</td>
        <td></td>
    </tr>
    <tr>
        <td>pvillard31</td>
        <td>Pierre Villard</td>
        <td></td>
    </tr>
    <tr>
        <td>ijokarumawak</td>
        <td>Koji Kawamura</td>
        <td></td>
    </tr>
    <tr>
        <td>mosermw</td>
        <td>Michael Moser</td>
        <td></td>
    </tr>
    <tr>
        <td>scottyaslan</td>
        <td>Scott Aslan</td>
        <td></td>
    </tr>
    <tr>
        <td>jstorck</td>
        <td>Jeff Storck</td>
        <td></td>
    </tr>
    <tr>
        <td>phrocker</td>
        <td>Marc Parisi</td>
        <td></td>
    </tr>
</table>
</div>
</div>
<div class="row">
<div class="large-12 columns">
<h3 class="nifi-txt">
    <span>
	Committers
    </span>
</h3>
</div>
</div>
<div class="row">
<div class="large-12 columns">
<table>
    <tr>
	<th>Id</th>
	<th>Name</th>
	<th>Affiliation</th>
    </tr>
    <tr>
	<td>toivoadams</td>
	<td>Toivo Adams</td>
	<td></td>
    </tr>
    <tr>
	<td>rickysaltzer</td>
	<td>Ricky Saltzer</td>
	<td></td>
    </tr>
    <tr>
        <td>brosander</td>
        <td>Bryan Rosander</td>
        <td></td>
    </tr>
    <tr>
        <td>jeremydyer</td>
        <td>Jeremy Dyer</td>
        <td></td>
    </tr>
    <tr>
        <td>jfrazee</td>
        <td>Joey Frazee</td>
        <td></td>
    </tr>
    <tr>
        <td>bqiu</td>
        <td>Bin Qiu</td>
        <td></td>
    </tr>
    <tr>
        <td>rmoran</td>
        <td>Rob Moran</td>
        <td></td>
    </tr>
    <tr>
        <td>andrewmlim</td>
        <td>Andrew M. Lim</td>
        <td></td>
    </tr>
    <tr>
        <td>mhogue</td>
        <td>Mike Hogue</td>
        <td></td>
    </tr>
    <tr>
        <td>pwicks</td>
        <td>Peter Wicks</td>
        <td></td>
    </tr>
    <tr>
        <td>aichrist</td>
        <td>Andrew Christianson</td>
        <td></td>
    </tr>
    <tr>
        <td>kdoran</td>
        <td>Kevin Doran</td>
        <td></td>
    </tr>
    <tr>
        <td>zenfenan</td>
        <td>Sivaprasanna Sethuraman</td>
        <td></td>
    </tr>
</table>
</div>
</div>
<div class="row">
<div class="large-12 columns">
<h3 class="nifi-txt">
    <span>
	Emeritus Members
    </span>
</h3>
</div>
</div>
<div class="row">
<div class="large-12 columns">
<table>
    <tr>
	<th>Id</th>
	<th>Name</th>
    </tr>
    <tr>
	<td>bimargulies</td>
	<td>Benson Margulies</td>
    </tr>
        </table>
    </div>
</div>
<div class="row">
        <div class="large-12 columns">
            <p class="description">The team is comprised of Project Management Committee Members, Committers, and Contributors.
	    <p class="description">Committers are the group of volunteers who are responsible for the technical aspects of the Apache NiFi Project. This group has write access to the appropriate source repositories and these volunteers may cast binding votes on any technical discussion.  Membership as a Committer is by invitation only and must be approved by <a href="https://www.apache.org/foundation/glossary.html#ConsensusApproval">consensus approval</a> of the active Apache NiFi PMC members on a vote open for at least 72 hours. A Committer is considered inactive by their own declaration or by not contributing in any form to the project for over six months. An inactive member can become active again by reversing whichever condition made them inactive ( i.e. , by reversing their earlier declaration or by once again contributing toward the project's work). Membership can be revoked by a unanimous vote of all the active PMC members (except the member in question if they are a PMC member).
	   <p class="description">Contributors improve the project through submission of patches and suggestions. The number of Contributors to the project is unbounded. Get involved today. All contributions to the project are greatly appreciated.</p>
           <p class="description">Emeritus members are those that served as PMC members or committers and who have since moved into non-active status.  Their contributions and efforts are greatly appreciated in helping the community develop.</p>
        </div>
     </div>
</div>
