<!DOCTYPE html>
<html class="no-js" lang="en">
    <head>
        <title>Apache NiFi Team</title>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <link rel="shortcut icon" href="/assets/images/nifi16.ico"/>
        <link rel="stylesheet" href="/stylesheets/app.min.92da7048339401bf53463b01188254399d9c8a2138949712827fee24e79c12e4.css">
        <link rel="stylesheet" href="/assets/stylesheets/font-awesome.min.css">
        <script src="/assets/js/modernizr.js"></script>
        <script src="/assets/js/webfontloader.js"></script>
        <script>
  var _paq = window._paq = window._paq || [];
  _paq.push(['disableCookies']);
  _paq.push(['trackPageView']);
  _paq.push(['enableLinkTracking']);
  (function() {
    var baseUri = "//matomo.privacy.apache.org/";
    _paq.push(['setTrackerUrl', baseUri + 'matomo.php']);
    _paq.push(['setSiteId', '28']);
    var trackerElement = document.createElement('script');
    var firstScriptElement = document.getElementsByTagName('script')[0];
    trackerElement.async = true;
    trackerElement.src = baseUri + 'matomo.js';
    var firstScriptElement = document.getElementsByTagName('script')[0];
    if (window.location.host === 'nifi.apache.org') {
      firstScriptElement.parentNode.insertBefore(trackerElement, firstScriptElement);
    }
  })();
</script>
</head>
    <body><div class="sticky contain-to-grid">
    <nav class="top-bar" data-topbar role="navigation">
        <ul class="title-area">
            <li class="name">
                <h1>
                    <a href="index.html">
                        <img id="logo-top-bar" src="/assets/images/nifi-drop-white.svg" alt="Apache NiFi"/>
                    </a>
                </h1>
            </li>
            
            <li class="toggle-topbar menu-icon"><a href="#"><span></span></a></li>
        </ul>

        <section class="top-bar-section">
            
            <ul class="right">
                <li class="has-dropdown">
                    <a href="#">Project</a>
                    <ul class="dropdown">
                        <li><a href="index.html">Home</a></li>
                        <li><a href="https://blogs.apache.org/nifi/"><i class="fa fa-external-link external-link"></i>Apache NiFi Blog</a></li>
                        <li><a href="https://www.apache.org/licenses/"><i class="fa fa-external-link external-link"></i>License</a></li>
                    </ul>
                </li>
                <li class="has-dropdown">
                    <a href="#">Documentation</a>
                    <ul class="dropdown">
                        <li><a href="faq.html">FAQ</a></li>
                        <li><a href="videos.html">Videos</a></li>
                        <li><a href="docs.html">NiFi Docs</a></li>
                        <li><a href="https://cwiki.apache.org/confluence/display/NIFI"><i class="fa fa-external-link external-link"></i>Wiki</a></li>
                        <li><a href="security.html">NiFi Security Reports</a></li>
                        <li><a href="registry-security.html">NiFi Registry Security Reports</a></li>
                    </ul>
                </li>
                <li class="has-dropdown">
                    <a href="#">Downloads</a>
                    <ul class="dropdown">
                        <li><a href="download.html">Download NiFi</a></li>
                        <li><a href="https://cwiki.apache.org/confluence/display/NIFI/Release+Notes"><i class="fa fa-external-link external-link"></i>Release Notes</a></li>
                    </ul>
                </li>
                <li class="has-dropdown">
                    <a href="#">Community</a>
                    <ul class="dropdown">
                        <li><a href="https://cwiki.apache.org/confluence/display/NIFI/Contributor+Guide"><i class="fa fa-external-link external-link"></i>Contributor Guide</a></li>
                        <li><a href="mailing_lists.html">Mailing Lists &amp; Chat</a></li>
                        <li><a href="people.html">People</a></li>
                        <li><a href="powered-by-nifi.html">Powered by NiFi</a></li>
                    </ul>
                </li>
                <li class="has-dropdown">
                    <a href="#">Development</a>
                    <ul class="dropdown">
                        <li><a href="quickstart.html">Quickstart</a></li>
                        <li><a href="release-guide.html">Release Guide</a></li>
                        <li><a href="gpg.html">GPG Guide</a></li>
                        <li><a href="fds-release-guide.html">FDS Release Guide</a></li>
                        <li><a href="licensing-guide.html">Licensing Guide</a></li>
                        <li><a href="developer-guide.html">Developer Guide</a></li>
                        <li><a href="https://gitbox.apache.org/repos/asf/nifi.git"><i class="fa fa-external-link external-link"></i>Source</a></li>
                        <li><a href="https://issues.apache.org/jira/browse/NIFI"><i class="fa fa-external-link external-link"></i>Issues</a></li>
                        <li><a href="https://github.com/apache/nifi"><i class="fa fa-external-link external-link"></i>GitHub</a></li>
                    </ul>
                </li>
                <li class="has-dropdown">
                    <a href="#">ASF Links</a>
                    <ul class="dropdown">
                        <li><a href="https://www.apache.org"><i class="fa fa-external-link external-link"></i>Apache Software Foundation</a></li>
                        <li><a href="https://privacy.apache.org/policies/privacy-policy-public.html"><i class="fa fa-external-link external-link"></i>Privacy Policy</a></li>
                        <li><a href="https://www.apache.org/foundation/sponsorship.html"><i class="fa fa-external-link external-link"></i>Sponsorship</a></li>
                        <li><a href="https://www.apache.org/security/"><i class="fa fa-external-link external-link"></i>Security</a></li>
                        <li><a href="https://www.apache.org/foundation/thanks.html"><i class="fa fa-external-link external-link"></i>Thanks</a></li>
                    </ul>
                </li>
                <li class="has-dropdown">
                    <a href="#">Subprojects</a>
                    <ul class="dropdown">
                        <li><a href="minifi/index.html">MiNiFi</a></li>
                        <li><a href="registry.html">Registry</a></li>
                        <li><a href="fds.html">FDS</a></li>
                    </ul>
                </li>
            </ul>
        </section>
    </nav>
</div>

          <div class="row">
            <div class="large-12 columns">
              <div class="large-space"></div>
	<h1 id="apache-span-classninispanspan-classfifispan-team">Apache <span class="ni">ni</span><span class="fi">fi</span> Team</h1>
<p>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>
<h3 id="pmc-members">PMC Members</h3>
<table>
<thead>
<tr>
<th>Apache Username</th>
<th>Name</th>
</tr>
</thead>
<tbody>
<tr>
<td>aboda</td>
<td>Arpad Boda</td>
</tr>
<tr>
<td>afucs</td>
<td>Andre Fucs de Miranda</td>
</tr>
<tr>
<td>aldrin</td>
<td>Aldrin Piri</td>
</tr>
<tr>
<td>alopresto</td>
<td>Andy LoPresto</td>
</tr>
<tr>
<td>andrewmlim</td>
<td>Andrew M. Lim</td>
</tr>
<tr>
<td>bbende</td>
<td>Bryan Bende</td>
</tr>
<tr>
<td>busbey</td>
<td>Sean Busbey</td>
</tr>
<tr>
<td>danbress</td>
<td>Dan Bress</td>
</tr>
<tr>
<td>devriesb</td>
<td>Brandon DeVries</td>
</tr>
<tr>
<td>exceptionfactory</td>
<td>David Handermann</td>
</tr>
<tr>
<td>ijokarumawak</td>
<td>Koji Kawamura</td>
</tr>
<tr>
<td>jcarey</td>
<td>Jason Carey</td>
</tr>
<tr>
<td>jeremydyer</td>
<td>Jeremy Dyer</td>
</tr>
<tr>
<td>jfrazee</td>
<td>Joey Frazee</td>
</tr>
<tr>
<td>joewitt</td>
<td>Joe Witt</td>
</tr>
<tr>
<td>jskora</td>
<td>Joe Skora</td>
</tr>
<tr>
<td>jvwing</td>
<td>James Wing</td>
</tr>
<tr>
<td>kevdoran</td>
<td>Kevin Doran</td>
</tr>
<tr>
<td>markap14</td>
<td>Mark Payne</td>
</tr>
<tr>
<td>mattyb149</td>
<td>Matt Burgess</td>
</tr>
<tr>
<td>mcgilman</td>
<td>Matt Gilman</td>
</tr>
<tr>
<td>mosermw</td>
<td>Michael W Moser</td>
</tr>
<tr>
<td>mthomsen</td>
<td>Mike Thomsen</td>
</tr>
<tr>
<td>ozhurakousky</td>
<td>Oleg Zhurakousky</td>
</tr>
<tr>
<td>phrocker</td>
<td>Marc Parisi</td>
</tr>
<tr>
<td>pvillard</td>
<td>Pierre Villard</td>
</tr>
<tr>
<td>scottyaslan</td>
<td>Scott Aslan</td>
</tr>
<tr>
<td>szaszm</td>
<td>Marton Szasz</td>
</tr>
<tr>
<td>taftster</td>
<td>Adam Taft</td>
</tr>
<tr>
<td>tkurc</td>
<td>Tony Kurc</td>
</tr>
<tr>
<td>turcsanyi</td>
<td>Peter Turcsanyi</td>
</tr>
<tr>
<td>ymdavis</td>
<td>Yolanda Davis</td>
</tr>
</tbody>
</table>
<h3 id="committers">Committers</h3>
<table>
<thead>
<tr>
<th>Apache Username</th>
<th>Name</th>
</tr>
</thead>
<tbody>
<tr>
<td>adebreceni</td>
<td>Adam Debreceni</td>
</tr>
<tr>
<td>aichrist</td>
<td>Andy I.C.</td>
</tr>
<tr>
<td>amarkovics</td>
<td>Ádám Markovics</td>
</tr>
<tr>
<td>bakaid</td>
<td>Dániel Bakai</td>
</tr>
<tr>
<td>bqiu</td>
<td>Ben Qiu</td>
</tr>
<tr>
<td>brosander</td>
<td>Bryan Rosander</td>
</tr>
<tr>
<td>bsimon</td>
<td>Simon Bence</td>
</tr>
<tr>
<td>chriss</td>
<td>Chris Sampson</td>
</tr>
<tr>
<td>denes</td>
<td>Denes Arvay</td>
</tr>
<tr>
<td>edbe</td>
<td>Ed Berezitsky</td>
</tr>
<tr>
<td>fgerlits</td>
<td>Ferenc Gerlits</td>
</tr>
<tr>
<td>greyp</td>
<td>Paul Grey</td>
</tr>
<tr>
<td>jgresock</td>
<td>Joe Gresock</td>
</tr>
<tr>
<td>kotarot</td>
<td>Kotaro Terada</td>
</tr>
<tr>
<td>lordgamez</td>
<td>Gábor Gyimesi</td>
</tr>
<tr>
<td>martinzink</td>
<td>Martin Zink</td>
</tr>
<tr>
<td>mhogue</td>
<td>Mike Hogue</td>
</tr>
<tr>
<td>mtien</td>
<td>Margot Tien</td>
</tr>
<tr>
<td>otto</td>
<td>Otto Fowler</td>
</tr>
<tr>
<td>rfellows</td>
<td>Rob Fellows</td>
</tr>
<tr>
<td>rickysaltzer</td>
<td>Ricky Saltzer</td>
</tr>
<tr>
<td>rmoran</td>
<td>Rob Moran</td>
</tr>
<tr>
<td>thenatog</td>
<td>Nathan Gough</td>
</tr>
<tr>
<td>toivoadams</td>
<td>Toivo Adams</td>
</tr>
<tr>
<td>tpalfy</td>
<td>Tamas Palfy</td>
</tr>
<tr>
<td>zenfenan</td>
<td>Sivaprasanna Sethuraman</td>
</tr>
</tbody>
</table>
<h3 id="in-memoriam">In Memoriam</h3>
<table>
<thead>
<tr>
<th>Apache Username</th>
<th>Name</th>
</tr>
</thead>
<tbody>
<tr>
<td>jstorck</td>
<td>Jeff Storck</td>
</tr>
</tbody>
</table>
<h3 id="emeritus-members">Emeritus Members</h3>
<table>
<thead>
<tr>
<th>Apache Username</th>
<th>Name</th>
</tr>
</thead>
<tbody>
<tr>
<td>bimargulies</td>
<td>Benson Margulies</td>
</tr>
<tr>
<td>jbarnabee</td>
<td>Jennifer Barnabee</td>
</tr>
<tr>
<td>pwicks</td>
<td>Peter Wicks</td>
</tr>
<tr>
<td>jpercivall</td>
<td>Joe Percivall</td>
</tr>
</tbody>
</table>
<p>The team consists of Project Management Committee Members, Committers, and Contributors.</p>
<p>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. All committer input is valued and when technical
discussions occur, committer input is treated the same as PMC member input. Committers are encouraged to vote on
releases and technical discussions, but only PMC members may cast &ldquo;binding&rdquo; votes
see <a href="https://www.apache.org/foundation/voting.html#binding-votes">Apache Voting Guide</a>.
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&rsquo;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>
<p>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>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 class="row">
    <div class="large-12 columns footer">
        <a href="https://www.apache.org">
            <img id="asf-logo" alt="Apache Software Foundation" src="/assets/images/asf_logo.png" width="200" style="margin:0px 10px" />
        </a>
        <a  href="https://www.apache.org/events/current-event.html">
            <img src="https://www.apache.org/events/current-event-234x60.png" style="margin:0px 10px" />
        </a>
        <div id="copyright">
            <p>Copyright &#169; 2022 The Apache Software Foundation, Licensed under the <a
                    href="https://www.apache.org/licenses/">Apache License, Version 2.0</a>.<br/>Apache, the
                Apache feather logo, NiFi, Apache NiFi and the project logo are trademarks of The Apache Software
                Foundation.</p>
        </div>
    </div>
</div>
        <script src="/assets/js/jquery.min.js"></script>
        <script src="/assets/js/foundation.js"></script>
        <script src="/assets/js/app.js"></script>
    </body>
</html>