aboutsummaryrefslogblamecommitdiffstats
path: root/packages/website/ts/pages/about/about.tsx
blob: 81a3f59e11609c2d5998a65fe82bed7193e7c2b2 (plain) (tree)
1
2
3
4
5
6
7
8
9
                                                        
                            

                                                      
                                              
                                                       
                                                 
                                                 
                                                     
                                               
                                       
 















                                                                                     
                                       







                                                                                    
                                                                                        




                                                                       


                                 







                                                                                       
                                           
      



                                                                                      
                                                                             


                                                                
                                               










                                                                                          


                                 



                                                                                   
                                                                                     
                                          
                                                                          

                                                
      



                                                                                                                                    
                                      





                                                             
                                    
                                                                                
                                        



                                                         

  


                                 
                                      
                                                                                                              













                                                                                                                                                     








                                                                                                                                                   


                                 








                                                                                                                                 

                                 
                          
                                                                                                                   



                                                          
     
                           
                                                  



                                                                                                                                       

  








                                                                                                                                                                          




                                                                                                                                                                                        
                                                                   
      







                                                                                                        
  
 


                                 
                                            

                                                                                                                                     
                                                             
      






                                                                                                                                           



                                                                                                                                   
                                      


                                                        

  














                                                                                                                                                                                                                       






                                                                                                                                                      

  



                                 
                                                                                                                                                                 

                                                                
                                                    
      







                                                                                                                          

  
                                  






















                                                                                              


                                  







                                                                                

                            
                                                                                                     
                                            


                                                                  
      




                             

                           










                                  





                                  


                                                                    
                                      

                              
                                      
                

                                                                  


                                                  
                                                                    
                                                    
                  


                                                                                                      

                                           




                                                          
                         


                                                                                                                        


                                                       

                                                                                            
                                                                                        
                                                                                        
                                                                                        
                                                                                        
                                                                                        
                                                                                        
                                                                                        



                                                                              




                                                          


                                     

                                                                                         
                          

                                                                                  



                                               





                                                          

                                                                         
                                                                                                         
                                             
                                   



                                                                                  
                                                                                              


                  
                                                                       
                                         
                                                   

                                           

                                                                       




                      
import { colors, Link, Styles } from '@0x/react-shared';
import * as _ from 'lodash';
import * as React from 'react';
import * as DocumentTitle from 'react-document-title';
import { Footer } from 'ts/components/footer';
import { TopBar } from 'ts/components/top_bar/top_bar';
import { Profile } from 'ts/pages/about/profile';
import { Dispatcher } from 'ts/redux/dispatcher';
import { ProfileInfo, WebsitePaths } from 'ts/types';
import { Translate } from 'ts/utils/translate';
import { utils } from 'ts/utils/utils';

const teamRow1: ProfileInfo[] = [
    {
        name: 'Will Warren',
        title: 'Co-founder & CEO',
        description: `Smart contract R&D. Previously applied physics at Los Alamos \
                      Nat Lab. Mechanical engineering at UC San Diego. PhD dropout.`,
        image: '/images/team/will.jpg',
        linkedIn: 'https://www.linkedin.com/in/will-warren-92aab62b/',
        github: 'https://github.com/willwarren89',
        medium: 'https://medium.com/@willwarren89',
    },
    {
        name: 'Amir Bandeali',
        title: 'Co-founder & CTO',
        description: `Smart contract R&D. Previously fixed income trader at DRW. \
                      Finance at University of Illinois, Urbana-Champaign.`,
        image: '/images/team/amir.png',
        linkedIn: 'https://www.linkedin.com/in/abandeali1/',
        github: 'https://github.com/abandeali1',
        medium: 'https://medium.com/@abandeali1',
    },
    {
        name: 'Fabio Berger',
        title: 'Senior Engineer',
        description: `Full-stack blockchain engineer. Previously software engineer \
                      at Airtable and founder of WealthLift. Computer Science at Duke.`,
        image: '/images/team/fabio.jpg',
        linkedIn: 'https://www.linkedin.com/in/fabio-berger-03ab261a/',
        github: 'https://github.com/fabioberger',
        medium: 'https://medium.com/@fabioberger',
    },
];

const teamRow2: ProfileInfo[] = [
    {
        name: 'Alex Xu',
        title: 'Director of Operations',
        description: `Strategy and operations. Previously digital marketing at Google \
                      and vendor management at Amazon. Economics at UC San Diego.`,
        image: '/images/team/alex.jpg',
        linkedIn: 'https://www.linkedin.com/in/alex-xu/',
        github: '',
        medium: 'https://medium.com/@aqxu',
    },
    {
        name: 'Leonid Logvinov',
        title: 'Engineer',
        description: `Full-stack blockchain engineer. Previously blockchain engineer \
                      at Neufund. Computer Science at University of Warsaw.`,
        image: '/images/team/leonid.png',
        linkedIn: 'https://www.linkedin.com/in/leonidlogvinov/',
        github: 'https://github.com/LogvinovLeon',
        medium: 'https://medium.com/@Logvinov',
    },
    {
        name: 'Ben Burns',
        title: 'Designer',
        description: `Product, motion, and graphic designer. Previously designer \
                      at Airtable and Apple. Digital Design at University of Cincinnati.`,
        image: '/images/team/ben.jpg',
        linkedIn: 'https://www.linkedin.com/in/ben-burns-30170478/',
        github: '',
        medium: '',
    },
];

const teamRow3: ProfileInfo[] = [
    {
        name: 'Brandon Millman',
        title: 'Senior Engineer',
        description: `Full-stack engineer. Previously senior software engineer at \
                      Twitter. Computer Science and Electrical Engineering at Duke.`,
        image: '/images/team/brandon.png',
        linkedIn: 'https://www.linkedin.com/in/brandon-millman-b093a022/',
        github: 'https://github.com/BMillman19',
        medium: 'https://medium.com/@bchillman',
    },
    {
        name: 'Tom Schmidt',
        title: 'Product Manager',
        description: `Previously engineering at Apple, product management at Facebook and Instagram. Computer Science at Stanford.`,
        image: '/images/team/tom.jpg',
        linkedIn: 'https://www.linkedin.com/in/tomhschmidt/',
        github: 'https://github.com/tomhschmidt',
        medium: '',
    },
    {
        name: 'Jacob Evans',
        title: 'Ecosystem Engineer',
        description: `Previously software engineer at Qantas and RSA Security.`,
        image: '/images/team/jacob.jpg',
        linkedIn: 'https://www.linkedin.com/in/dekzter/',
        github: 'https://github.com/dekz',
        medium: '',
    },
];

const teamRow4: ProfileInfo[] = [
    {
        name: 'Blake Henderson',
        title: 'Operations Associate',
        description: `Operations and Analytics. Previously analytics at LinkedIn. Economics at UC San Diego.`,
        image: '/images/team/blake.jpg',
        linkedIn: 'https://www.linkedin.com/in/blakerhenderson/',
        github: '',
        medium: '',
    },
    {
        name: 'Zack Skelly',
        title: 'Lead Recruiter',
        description: `Talent. Previously first recruiter at Heap, recruiting at Dropbox and Google. English Rhetoric and Composition at Pepperdine.`,
        image: '/images/team/zach.png',
        linkedIn: 'https://www.linkedin.com/in/zackaryskelly/',
        github: '',
        medium: '',
    },
    {
        name: 'Greg Hysen',
        title: 'Blockchain Engineer',
        description: `Smart contract R&D. Previously lead distributed systems engineer at Hivemapper. Computer Science at University of Waterloo.`,
        image: '/images/team/greg.jpeg',
        linkedIn: 'https://www.linkedin.com/in/gregory-hysen-71741463/',
        github: 'https://github.com/hysz',
        medium: '',
    },
];

const teamRow5: ProfileInfo[] = [
    {
        name: 'Remco Bloemen',
        title: 'Technical Fellow',
        description: `Previously cofounder at Neufund and Coblue. Part III at Cambridge. PhD dropout at Twente Business School.`,
        image: '/images/team/remco.jpeg',
        linkedIn: 'https://www.linkedin.com/in/remcobloemen/',
        github: 'http://github.com/recmo',
        medium: '',
    },
    {
        name: 'Francesco Agosti',
        title: 'Engineer',
        description: `Full-stack engineer. Previously senior software engineer at Yelp. Computer Science at Duke.`,
        image: 'images/team/fragosti.png',
        linkedIn: 'https://www.linkedin.com/in/fragosti/',
        github: 'http://github.com/fragosti',
    },
    {
        name: 'Mel Oberto',
        title: 'Office Ops / Executive Assistant',
        description: `Daily Operations. Previously People Operations Associate at Heap. Marketing and MBA at Sacred Heart University.`,
        image: 'images/team/mel.png',
        linkedIn: 'https://www.linkedin.com/in/melanieoberto',
    },
];

const teamRow6: ProfileInfo[] = [
    {
        name: 'Alex Browne',
        title: 'Engineer in Residence',
        description: `Full-stack blockchain engineer. Previously at Plaid. Open source guru and footgun dismantler. Computer Science and Electrical Engineering at Duke.`,
        image: 'images/team/alexbrowne.png',
        linkedIn: 'https://www.linkedin.com/in/stephenalexbrowne/',
        github: 'http://github.com/albrow',
    },
    {
        name: 'Peter Zeitz',
        title: 'Research Fellow',
        description: `Researching decentralized governance. Previously Assistant Professor of Economics at National University of Singapore Business School. PhD in Economics at UCLA.`,
        image: 'images/team/peter.jpg',
        linkedIn: 'https://www.linkedin.com/in/peter-z-7b9595163/',
    },
    {
        name: 'Chris Kalani',
        title: 'Director of Design',
        description: `Previously founded Wake (acquired by InVision). Early Facebook product designer.`,
        image: 'images/team/chris.png',
        linkedIn: 'https://www.linkedin.com/in/chriskalani/',
        github: 'https://github.com/chriskalani',
    },
];

const teamRow7: ProfileInfo[] = [
    {
        name: 'Clay Robbins',
        title: 'Ecosystem Development Lead',
        description: `Growth & Business Development. Previously product and partnerships at Square. Economics at Dartmouth College.`,
        image: 'images/team/clay.png',
        linkedIn: 'https://www.linkedin.com/in/robbinsclay/',
    },
    {
        name: 'Matt Taylor',
        title: 'Marketing Lead',
        description: `Growth & Marketing. Previously marketing at Abra and Square. Economics and Philosophy at Claremont McKenna College.`,
        image: 'images/team/matt.jpg',
        linkedIn: 'https://www.linkedin.com/in/mattytay/',
    },
    {
        name: 'Eugene Aumson',
        title: 'Engineer',
        description: `Developer Experience. Previously senior software engineer in foreign exchange applications at Bloomberg LP.`,
        image: 'images/team/gene.jpg',
        linkedIn: 'https://www.linkedin.com/in/aumson/',
        github: 'https://github.com/feuGeneA',
    },
];

const teamRow8: ProfileInfo[] = [
    {
        name: 'Weijie Wu',
        title: 'Research Fellow',
        description: `Researching decentralized governance. Previously Researcher at Huawei and Assistant Professor at Shanghai Jiao Tong University. PhD in Computer Science at The Chinese University of Hong Kong.`,
        image: 'images/team/weijie.png',
        linkedIn: 'https://www.linkedin.com/in/weijiewu/',
    },
    {
        name: 'Rahul Singireddy',
        title: 'Relayer Success Manager',
        description: `Previously community at Zeppelin, growth at Dharma, and cryptocurrency contributor at Forbes. Symbolic Systems at Stanford.`,
        image: 'images/team/rahul.png',
        linkedIn: 'https://www.linkedin.com/in/rahul-singireddy-3037908a/',
    },
    {
        name: 'Jason Somensatto',
        title: 'Strategic Legal Counsel',
        description: `Legal. Previously head of blockchain and crypto practice at Orrick. JD from George Washington University and undergrad at UVA.`,
        image: 'images/team/jason.png',
        linkedIn: 'https://www.linkedin.com/in/jasonsomensatto/',
    },
];

const teamRow9: ProfileInfo[] = [
    {
        name: 'Steve Klebanoff',
        title: 'Senior Engineer',
        description: ` Full-stack engineer. Previously Staff Software Engineer at AppFolio. Computer Science & Cognitive Psychology at Northeastern University.`,
        image: 'images/team/steve.png',
        linkedIn: 'https://www.linkedin.com/in/steveklebanoff/',
        github: 'https://github.com/steveklebanoff',
    },
    {
        name: 'Xianny Ng',
        title: 'Engineer',
        description: `Developer Experience. Previously telemetry at Mapbox and platform engineering at Bench Accounting.`,
        image: 'images/team/xianny.png',
        linkedIn: 'https://www.linkedin.com/in/xianny/',
        github: 'https://github.com/xianny',
    },
];

const advisors1: ProfileInfo[] = [
    {
        name: 'Fred Ehrsam',
        description: 'Co-founder of Coinbase. Previously FX trader at Goldman Sachs.',
        image: '/images/advisors/fred.jpg',
        linkedIn: 'https://www.linkedin.com/in/fredehrsam/',
        medium: 'https://medium.com/@FEhrsam',
        twitter: 'https://twitter.com/FEhrsam',
    },
    {
        name: 'Olaf Carlson-Wee',
        image: '/images/advisors/olaf.png',
        description: 'Founder of Polychain Capital. First hire at Coinbase. Angel investor.',
        linkedIn: 'https://www.linkedin.com/in/olafcw/',
        angellist: 'https://angel.co/olafcw',
    },
    {
        name: 'Joey Krug',
        description: `Co-CIO at Pantera Capital. Founder of Augur. Thiel 20 Under 20 Fellow.`,
        image: '/images/advisors/joey.jpg',
        linkedIn: 'https://www.linkedin.com/in/joeykrug/',
        github: 'https://github.com/joeykrug',
        angellist: 'https://angel.co/joeykrug',
    },
];

const advisors2: ProfileInfo[] = [
    {
        name: 'Linda Xie',
        description: 'Co-founder of Scalar Capital. Previously PM at Coinbase.',
        image: '/images/advisors/linda.jpg',
        linkedIn: 'https://www.linkedin.com/in/lindaxie/',
        medium: 'https://medium.com/@linda.xie',
        twitter: 'https://twitter.com/ljxie',
    },
    {
        name: 'David Sacks',
        description: 'General Partner at Craft Ventures. Original COO of PayPal. Founder of Yammer.',
        image: '/images/advisors/david.png',
        linkedIn: 'https://www.linkedin.com/in/davidoliversacks/',
        medium: 'https://medium.com/@davidsacks',
        twitter: 'https://twitter.com/DavidSacks',
    },
];

export interface AboutProps {
    source: string;
    location: Location;
    translate: Translate;
    dispatcher: Dispatcher;
}

interface AboutState {}

const styles: Styles = {
    header: {
        fontFamily: 'Roboto Mono',
        fontSize: 36,
        color: 'black',
        paddingTop: 110,
    },
    weAreHiring: {
        fontSize: 30,
        color: colors.darkestGrey,
        fontFamily: 'Roboto Mono',
        letterSpacing: 7.5,
    },
};

export class About extends React.Component<AboutProps, AboutState> {
    public componentDidMount(): void {
        window.scrollTo(0, 0);
    }
    public render(): React.ReactNode {
        return (
            <div style={{ backgroundColor: colors.lightestGrey }}>
                <DocumentTitle title="0x About Us" />
                <TopBar
                    blockchainIsLoaded={false}
                    location={this.props.location}
                    style={{ backgroundColor: colors.lightestGrey }}
                    translate={this.props.translate}
                />
                <div id="about" className="mx-auto max-width-4 py4" style={{ color: colors.grey800 }}>
                    <div className="mx-auto pb4 sm-px3" style={{ maxWidth: 435 }}>
                        <div style={styles.header}>About us:</div>
                        <div
                            className="pt3"
                            style={{
                                fontSize: 17,
                                color: colors.darkestGrey,
                                lineHeight: 1.5,
                            }}
                        >
                            Our team is a globally distributed group with backgrounds in engineering, research, business
                            and design. We are passionate about decentralized technology and its potential to act as an
                            equalizing force in the world.
                        </div>
                    </div>
                    <div className="pt3 md-px4 lg-px0">
                        <div className="clearfix pb3">{this._renderProfiles(teamRow1)}</div>
                        <div className="clearfix">{this._renderProfiles(teamRow2)}</div>
                        <div className="clearfix">{this._renderProfiles(teamRow3)}</div>
                        <div className="clearfix">{this._renderProfiles(teamRow4)}</div>
                        <div className="clearfix">{this._renderProfiles(teamRow5)}</div>
                        <div className="clearfix">{this._renderProfiles(teamRow6)}</div>
                        <div className="clearfix">{this._renderProfiles(teamRow7)}</div>
                        <div className="clearfix">{this._renderProfiles(teamRow8)}</div>
                        <div className="clearfix">{this._renderProfiles(teamRow9)}</div>
                    </div>
                    <div className="pt3 pb2">
                        <div
                            className="pt2 pb3 sm-center md-pl4 lg-pl0 md-ml3"
                            style={{
                                color: colors.grey,
                                fontSize: 24,
                                fontFamily: 'Roboto Mono',
                            }}
                        >
                            Advisors:
                        </div>
                        <div className="clearfix">{this._renderProfiles(advisors1)}</div>
                        <div className="clearfix">{this._renderProfiles(advisors2)}</div>
                    </div>
                    <div className="mx-auto py4 sm-px3" style={{ maxWidth: 308 }}>
                        <div className="pb2" style={styles.weAreHiring}>
                            WE'RE HIRING
                        </div>
                        <div
                            className="pb4 mb4"
                            style={{
                                fontSize: 16,
                                color: colors.darkestGrey,
                                lineHeight: 1.5,
                                letterSpacing: '0.5px',
                            }}
                        >
                            We are seeking outstanding candidates to{' '}
                            <Link to={WebsitePaths.Careers} textDecoration="underline" fontColor="black">
                                join our team
                            </Link>
                            . We value passion, diversity and unique perspectives.
                        </div>
                    </div>
                </div>
                <Footer translate={this.props.translate} dispatcher={this.props.dispatcher} />
            </div>
        );
    }
    private _renderProfiles(profiles: ProfileInfo[]): React.ReactNode {
        const numIndiv = profiles.length;
        const colSize = utils.getColSize(numIndiv);
        return _.map(profiles, profile => {
            return (
                <div key={`profile-${profile.name}`}>
                    <Profile colSize={colSize} profileInfo={profile} />
                </div>
            );
        });
    }
}