Scroll To View More
Brian Lenoski

Brian Lenoski

Fort Lauderdale, FL, United States
Member since June 26, 2016
Brian has ten years of experience developing software across web, mobile, and desktop platforms, including having been part of the development team that brought public transit to Apple Maps. He communicates extremely well, and has worked in teams of all sizes.
Brian is now available for hire
Portfolio
Experience
  • C++, 8 years
  • Linux, 8 years
  • Python, 4 years
  • CSS3, 1 year
  • React, 1 year
  • JavaScript, 1 year
  • Node.js, 1 year
  • Redux, 1 year
Fort Lauderdale, FL, United States
Availability
Part-time
Preferred Environment
JavaScript, CSS3, HTML5, Node.js, Electron
The most amazing...
...product I've launched is Maps on Apple Watch.
Employment
  • Node.js Application Developer
    2017 - 2017
    Team America (via Toptal)
    • Created a chatbot service in Node.js with Twilio (SMS) Facebook Messenger, and Watson Conversation Service (NLP) integrations.
    • Designed and implemented a feature allowing the user to preview and send a physical postcard via LOB integration to their senate or house representative through chat or web interface.
    • Supported CMS website back-end using Keystone JS, MongoDB, Node.js, and Pug.
    • Created automated background job processing services that ran daily and kept production MongoDB up-to-date with all 5000+ bills in Congress and 500+ representatives for all US states and territories.
    • Introduced functional testing to the project using Mocha.js/Expect.js testing framework. Introduced linting to the project using JavaScript Standard.
    Technologies: Node.js JavaScript ES6, Watson Conversation Service, Twilio API, Stripe API, Facebook Messenger API, Keystone JS
  • Software Consultant
    2016 - 2016
    Near Earth Autonomy
    • Independently designed and brought online the company's Continuous Integration (CI) solution. The CI system is used daily by the software engineering team and includes per commit and nightly builds.
    • Eliminated broken project builds on master branches by designing and building a pre-commit process leveraging Phabricator for code review, Jenkins Pipelines with Groovy scripts for automated builds, and custom Python scripts to integrate the tools.
    • Created a highly scalable CI environment where compute agents can be trivially added to increase parallel build capacity by capturing project specific build environments in Docker containers.
    • Deployed secure application web servers using Nginx reverse proxy with SSL/TLS termination.
    Technologies: Python, Groovy, Docker, Jenkins, Phabricator, Nginx
  • Senior Software Engineer
    2012 - 2016
    Apple
    • Designed and implemented algorithms for bringing new map data and features to millions of Apple Maps users. Utilized Hadoop and map-reduce to efficiently process world coverage geo data.
    • Led design, implementation, and testing of algorithm for dynamic generation of sub-tiles on the vector map server (patent pending, US 62044949), a critical component in bringing Apple Maps to Apple Watch users.
    • Acted as a key contributor to implementation of Apple Map’s vector tile server. Achieved sub 10ms latency at 50K QPS.
    • Promoted to Senior Software Engineer (ICT4) in April 2014.
    • Worked as the lead engineer for Point of Interest (POI) display in vector map tiles. Designed a popularity driven algorithm for choosing which POIs to display on the map in densely populated regions.
    • Designed and implemented POI metadata service, a component of the technology stack enabling Apple’s Universal Search feature on iOS devices.
    • Promoted to Engineering Manager in October 2014; led a team of four Software Engineers.
    • Owned Apple Maps live service providing on demand vector map tiles to millions of Apple Maps users.
    • Led the team’s rewrite of Apple Maps Live Traffic service. Reduced 95% latency from 100ms to 1ms. Resulted in factor of ten reduction of required server nodes in production environments.
    • Promoted to Engineering Manager of Vector Maps team in June 2015; led a team of ten.
    • Took ownership of a distributed data processing pipeline that transformed raw geospatial data into the map tiles used on all client devices running Apple Maps.
    • Successfully launched vector tile support for Apple Map’s Transit feature in iOS 9.
    Technologies: C++, Python, Hadoop, SQLite, Git, Xcode, Jenkins, Agile, Linux
  • Software Engineer
    2007 - 2012
    Medical Numerics
    • Reduced time complexity of 3-D image smoothing from O(nk^3) to O(nk) by implementing a separable convolution algorithm. Enabled the addition of a new real-time smoothing feature to the product.
    • Architected scalable 4-D statistical processing library using a parallel aggregation algorithm; decreased space complexity from O(n^4) to O(n^3) by transforming the algorithm to operate on 3-D blocks.
    • Parallelized a 3-D image registration algorithm by applying the map-reduce technique to an expensive operation in a tight inner loop; decreased registration processing time by 33% on target Linux platform.
    • Implemented an image processing service class using the active object pattern; allowed for a responsive GUI thread with concurrent execution of expensive image processing tasks.
    • Designed a pipelined processing engine class that was reused in multiple applications. The class achieved a magnitude of order speed up by vectorizing data intensive operations in the pipeline.
    • Promoted to Technical Lead in February 2011.
    • Reduced build times from ten minutes to one minute by refactoring the header inclusion policy to prefer forward declarations, and by applying the PIMPL idiom to widely included classes.
    • Introduced automated testing using Google Test. The time to execute the system test plan decreased by fifty percent.
    Technologies: C++, Qt, Visual Studio, Intel MKL, Google Test, Mercurial, Matlab
Experience
  • Patent, Dynamic Vector Map Tiles US 62044949 (Other amazing things)
    http://appft1.uspto.gov/netacgi/nph-Parser?Sect1=PTO1&Sect2=HITOFF&d=PG01&p=1&u=/netahtml/PTO/srchnum.html&r=1&f=G&l=50&s1=20160098598.PGNR.

    The present disclosure relates to systems and processes for providing vector map data for generating a view of a map in a mapping application. In one example process, a request for a vector map sub-tile can be received by a map server. The map server can identify a pre-generated vector map tile corresponding to the requested vector map sub-tile and can generate the requested vector map sub-tile from the identified vector map tile by dividing the vector map tile into two or more vector map sub-tiles. In some examples, dividing the vector map tile into multiple vector map sub-tiles can include identifying features and attributes of the vector map tile that should be included in the requested vector map sub-tile and generating the requested vector map sub-tile to include these features and attributes. The map server can then transmit the requested vector map sub-tile to the requesting electronic device.

  • Publication, December 2008 (Other amazing things)

    On the Performance of Autocorrelation Estimation Algorithms for fMRI Analysis. Paper published in publication IEEE Journal of Selected Topics in Signal Processing.

  • Movie Night (Development)
    https://github.com/blenoski/movie-night

    Sole developer of open source desktop application utilizing: JavaScript, CSS3, HTML5, Node.js, Electron, React.js, Redux, Webpack, and Firebase.

Skills
  • Languages
    JavaScript, C++, CSS3, HTML5, Python, Groovy
  • Libraries/APIs
    Node.js, React
  • Tools
    Git, Webpack, Jenkins, Phabricator, Nginx, Xcode
  • Paradigms
    Agile
  • Frameworks
    Redux, Electron.js
  • Platforms
    Firebase, Docker, Linux, Mac OS
  • Storage
    SQLite, MongoDB
Education
  • Master of Science degree in Electrical Engineering
    2005 - 2007
    Arizona State University - Tempe, AZ
  • Bachelor of Science degree in Biomedical Engineering
    1999 - 2005
    Arizona State University - Tempe, AZ
I really like this profile
Share it with others