Nickolas Fisher, Software Developer in West Chester, PA, United States
Nickolas Fisher

Software Developer in West Chester, PA, United States

Member since February 27, 2019
Nickolas is a developer with over a decade of experience in many languages and platforms. He specializes in large scale enterprise web apps, payment gateways, software architecture, and Windows services. A passionate company owner, Nickolas works with clients from around the globe and has led his team through many successful web, and mobile app development projects.
Nickolas is now available for hire

Portfolio

Experience

Location

West Chester, PA, United States

Availability

Part-time

Preferred Environment

Windows Environment using .NET Stack

The most amazing...

...project I've worked on is an app that calculates the most fuel-efficient directions for buses to take when picking up passengers.

Employment

  • Developer

    2008 - 2018
    BYL Risk Management
    • Supported the core software platform.
    • Developed and maintained the payment portal.
    • Integrated various payment portals.
    • Optimized internal processes.
    • Developed performance auditing software.
    • Completed the annual PCI certification.
    Technologies: SQL, C#, JavaScript, MVC, Web API

Experience

  • Absolutely Boxing - WordPress Site (Development)

    This is a blog site I developed independently using WordPress and hosted on AWS Lightsail. The site acts as a home platform for Absolutely Boxing.

    The site uses WP Page Bakery for the layout and incorporates plugins such as Yeost SEO, Google Analytics, Advanced Ads, Popup Anything, and NewsLetter.

  • Quickbooks and Great Plains Integrations (Development)

    Initially, our company was on Great Plains. We moved to Quickbooks in 2011. I helped facilitate that migration.

    We created IIF files from our home system and introduced them to Quickbooks. I helped the accounting team troubleshoot errors that came up during the migration and forward flow.

    We migrated back to Great Plains in 2013 and wrote an integration through eConnect. As we already had the IIF files created, we wanted to continue to use them I wrote an integration in an internal WinForms App (C#, .NET, SQL, ADO.NET) for reading the IIF files and importing them into Great Plains.

    Later we migrated one of the child companies back to Quickbooks. I needed to integrate into Quickbooks using the QB SDK and added branching to the application to understand if the account needed to be in Great Plains or Quickbooks.

  • PCI Testing - Annual Basis (Development)

    For four years, I was the point contact and lead developer (and in most cases, the only developer) for our PCI Compliance Testing.

    This included dealing with our compliance vendor, preparing staff for interviews with the vendor, performing a battery of tests against our public-facing websites, and hardening security deficiencies.

    I worked with a security vendor who would perform penetration testing on our web applications and evaluate our network for sensitive information. Remediation procedures included code changes, process changes, writing SQL Agent Jobs and BI suites to remove sensitive data after a certain time. I also sanitized databases, and logs of sensitive information.

  • OneSite and RealPage Integration (Development)

    In order to facilitate automated account imports coming from Student Housing clients, I wrote an integration with Real Page's platform.

    Real Page then informed us that we needed to move to a newer RPX platform to support accelerated rent clients. RPX was a REST API that required acknowledging an account had been picked up along with supporting documents for the account.

    The accounts came in XML format which then needed to be converted using XSLT to a format that was friendly for our host system, Latitude. XSLT was used to create a variable record format file.

  • Absolutely Boxing - Command Center (Development)

    The command center is an internal web application that is used to warehouse data, create articles, and manage workflow statuses for the Absolutely Boxing WordPress Site.

    The site directly integrates with WordPress to upload images, tags, categories, events, and full articles.

    The application is .NET stack, using Web API and MVC with a knockout front end.

    The site also connected with a Python bot that monitors Twitter for the latest gossip from premium sources–generally promoters or boxers themselves. The bot then categorizes the tweet as interesting or uninteresting and creates an alert for the user to review the tweet and write an article for it.

    Other features include a sophisticated workflow to manage article status, data aggregation modules, Hangfire for automation, and NLogger for logging.

  • My Toptal Profile In Chatbot Form (Development)
    https://profile.fishbowlllc.com/

    I built this bot specifically to reference my TopTal profile. The bot itself is a small web application using Node.js as a server, and Bootstrap for the layout. You can ask this blog about me and my experience.

    The bot is built using Dialogflow for the back end. I monitor it periodically to retain the model based on responses I am seeing from users who visit it.

    It is deployed on a Heroku instance. I manage the subdomain from Plesk on my home server's network and ensure SSL is enabled on the site. If the certificate were to fail, Chrome would not allow access to the microphone.

  • Enterprise Recovery Data Syncing in MS SQL (Development)
    https://www.enterpriserecovery.com/

    In the early days of Enterprise Recovery (ER), we had clients looking at a website connected to an ER-Enterprise database, and representatives working out of a system that had been in place before ER. We lacked the tools to import and export transactions and accounts into the ER database, but had those in the previous system.

    My role was to create a series of database jobs that automatically imported to the previous system, then synced that data back to a new one. We also had some functionality to take notes in the ER system, and those needed to be brought back into the old system.

    The challenges here were ensuring the transactions were in sync, and the accounts were balanced. If the accounts were out of balance, I wrote a script to categorize the type of error, and later wrote a script to automatically correct the ones that didn't need further research.

    This project was pure SQL using MS SQL and leveraged the SQL Agent for automation. I was also the designer of the database and responsible for its optimization.

  • My Balance Online (Development)
    https://cardionet.mybalanceonline.com/

    This was one of my first true C# and MVC projects. The site was designed to solve the problem of allowing clients to pay online, automatically.

    I was involved in the initial design and development of the site in a junior capacity. Over the course of the project's lifespan, I came to own this site, and was responsible for new features, optimization, security hardening, managing the DNS, and managing the IIS configurations.

    We had several challenges with the site. First and foremost, our customers used different payment vendors (First Data, iTransact, ClearComm). This meant that we needed to integrate to them in different ways without the use of Rest API.

    We also needed to separate the sites to prevent sensitive data from being exposed on the web application level from our internal network. To accomplish this, we wrote an internal API that restricted the type of data that could be displayed in the web application. We configured a firewall on each level, and ran semi-annual pen testing on the site, and annual security hardening.

  • Developed Accounting API using Node.js (Development)

    I was part of a team working with microservice architecture using AWS and Azure for deployment. My role was to design an API that was capable of syncing payments, invoices, and attachments with third-party systems such as Quickbooks and Great Plains.

    The API needed to be extensible to reduce the development time of ongoing integrations that may be required. The API itself was promise-based in Node.js using Express. It was backended with an MSSQL database that connected and used the Sequelize ORM.

  • Build A Simple Web App with Node.js and PostgreSQL (Development)
    https://developer.okta.com/blog/2019/11/22/node-postgres-simple-webapp

    I helped Okta write an article for their blog. The article required me to write a simple Node.js application with a PostgreSQL database, then use the Okta Single Sign-on provider to authenticate users.

  • Blogger for Okta Single Sign on Provider (Development)
    https://developer.okta.com/blog/2019/11/22/node-postgres-simple-webapp

    I worked with Okta to write an article about using their single sign on application in conjunction. Okta was integrated into a small application with Node.js backend and Postgres SQL for the database. The application used PugJs for the view engine.

  • .NET Unit Testing: Spend Upfront to Save Later On (Publication)
    Unit testing sometimes sounds like an unnecessary expense, but it is a powerful, yet simple tool. Unit tests allow you to identify and rectify weaknesses with relatively little effort. In this article, Toptal Software Engineer Nickolas Fisher takes you on a quick tour of unit testing and explains why you can’t have too many unit tests.

Skills

  • Languages

    C#, SQL, HTML, XML, JavaScript, CSS5
  • Frameworks

    ASP.NET MVC, Entity Framework Core, Entity, .NET, Knockout.js, AngularJS, NUnit, OAuth 2
  • Libraries/APIs

    jQuery, AutoMapper, Web API, Node.js, React, Vue.js
  • Platforms

    Windows, Visual Studio 2017, XAMPP
  • Storage

    MSSQLCE, JSON, MySQL
  • Other

    FirstData, Ajax, Harvest, Team Foundation Server 2015, PayPal
  • Tools

    Hangfire, Git, Bitbucket, GitHub, VS Code, Jira
  • Paradigms

    Object-relational Mapping (ORM), Dependency Injection, Unit Testing, Asynchronous Programming

Education

  • Bachelor's degree in Mathematics
    2005 - 2010
    West Chester University - West Chester, PA

To view more profiles

Join Toptal
Share it with others