Michael Evans

Staff Software Engineer at ShipBob, Inc.
  • Claim this Profile
Contact Information
us****@****om
(386) 825-5501
Location
Seattle, Washington, United States, US

Topline Score

Topline score feature will be out soon.

Bio

Generated by
Topline AI

You need to have a working account to view this content.
You need to have a working account to view this content.

Credentials

  • Functional Program Design in Scala
    Coursera
    Feb, 2018
    - Nov, 2024
  • Functional Programming Principles in Scala
    Coursera
    Feb, 2018
    - Nov, 2024
  • Javascript
    National Computer Science Academy
    Jan, 2011
    - Nov, 2024
  • PHP & MySQL
    W3Schools
    Jan, 2011
    - Nov, 2024

Experience

    • United States
    • Transportation, Logistics, Supply Chain and Storage
    • 500 - 600 Employee
    • Staff Software Engineer
      • Apr 2022 - Present

      ShipBob is a global omnifulfillment solution trusted by 7,000+ brands to ship orders everywhere their customers shop. From personalized and memorable unboxing experiences to faster shipping, ShipBob provides best-in-class supply chain solutions and fulfills global orders from the US, UK, EU, Canada, and Australia to meet customer expectations. ShipBob is a global omnifulfillment solution trusted by 7,000+ brands to ship orders everywhere their customers shop. From personalized and memorable unboxing experiences to faster shipping, ShipBob provides best-in-class supply chain solutions and fulfills global orders from the US, UK, EU, Canada, and Australia to meet customer expectations.

    • United States
    • IT Services and IT Consulting
    • 700 & Above Employee
    • Software Engineer
      • Dec 2018 - Dec 2020

      Refactoring fundamental Permissions model for IAM integration - Due to a concern about potential for escalation of privileges, Designed a strategy for changing the way we integrate with our most fundamental dependency. - Required a deep dive into the problem, evaluation of a previously implemented attempt at a solution, which ultimately failed to address the underlying problem, plans for non-breaking migrations, coordination among multiple teams and organizations, fighting for priority on the product roadmap, intervening with ongoing projects to ensure they would be compatible with the changes and prevent blocking their release, and finally, coordinated implementation of the changes which affected code scattered throughout nearly a dozen codebases. Serverless Event Processor - Developed a queue-based event processor backed by serverless AWS Lambda functions in order to respond to AWS Account Change Events. This included retry mechanisms, dead-letter queues, monitoring and alarms. - The real challenge of this project was the coordination of efforts among the many teams involved. AWS is a complex web of inter-dependent microservices. Tracking down the correct source-of-truth, contributing to other team’s libraries which otherwise didn’t quite match our use-case, and coordinating approvals to gain access to other teams’ data were the true tests of this project. Productivity Tooling for Cloud Workplaces - I developed a set of python tools which could be added to the local IDE, which would seamlessly sync with the cloud and run ssh-based cloud compilation within the IDE, Bridging the gap between local and cloud-based development. Clincher for sibling projects - I have a reputation for getting things done fast and well. As a result I was asked to jump in during the last few months of a couple projects which were falling behind schedule. Including Single Sign On via AWS CLI, and a generic Workflow Service built on AWS Step Functions. Show less

    • United States
    • Health, Wellness & Fitness
    • 200 - 300 Employee
    • Senior Software Engineer
      • Jan 2018 - Nov 2018

      Finalist in the Innovation Challenge: - Our company has adopted microservices, but we have almost zero integration tests between services. As a result, accidental breaking changes are common. - I’ve been leading a team in using code generation from Swagger OpenApi specs to create integration test scaffolding. This framework has already been adopted in new services and has been contributed to well beyond the scope of the original Innovation Challenge. - The impact is greatly decreasing the burden of backfilling missing integration tests in existing systems, and increasing awareness of endpoint coverage in new systems. Leading development of new Care Paths architecture: - Our company is currently reliant on an outside partner to maintain a set of data that is core to our business. This data comes to us in the form of manually managed CSVs, which come with many human-errors and formatting headaches, and have to be heavily massaged to fit our domain. - I’ve been working closely with Product to analyze the needs of our business, in order to simplify the data structure and design the system for maintaining and distributing the data ourselves. This involves both an internal Source of Truth database with a management UI, and shared Elasticsearch projections exposed by an internal microservice. - The impact of this system is to drastically increase the maintainability of the data, give us more control over when/how we publish changes, and to simplify the process of downstream consumers working with the data as it is trimmed down and shaped to fit a model that more closely represents the concepts in our domain. Show less

    • United States
    • Software Development
    • 1 - 100 Employee
    • Principal Consultant
      • May 2016 - Oct 2017

      - Worked with a variety of clients in a variety of language and technology stacks - Lead discovery sessions, gathered requirements, and formed project estimates. - Collaborated with sales team to engage new potential clients. - Mentored team members in general development principles and best practices. - Identified architectural issues which were the root cause of major code quality and productivity issues for an iOS application being developed by a large geographically distributed team of over 30 developers. Used Ruby scripts and the XCode build system to automatically migrate over 40 needlessly separate Swift and Objective C packages into a single cohesive codebase, reducing merge conflicts, coordination issues, team segregation and testing difficulty. - Helped a startup client learn to focus on iterative development towards an MVP. De-spaghetti-ified the Rails codebase by gradually refactoring ambiguous code and forming a more cohesive and accurate domain model. Worked with the client to define and evolve a consistent ubiquitous language which drastically clarified both the code and the requirement gathering sessions. Show less

    • United States
    • Technology, Information and Internet
    • 700 & Above Employee
    • Software Development Manager
      • Mar 2015 - Mar 2016

      Mentored senior and junior level developers with emphasis in the following principles:- Domain driven design- Single responsibility principles- Command/Query separation - Ubiquitous language & human readable code- Continuous refactoring- Iterative development and continuous deployment- KanbanDesigned a highly-scalable, distributed, asynchronous report processing service including:- Ability for various product domains to build and deploy their own report generating plugins- A central hosting service capable or running many versions or branches of a plugin side by side- A farm of peripheral worker servers which handled scheduled tasks, monitoring and logging- A central management and QA service using reflection to generate request forms for any report in any plugin- A regression testing tool capable of performing diff comparisons of report data between branches or environments and visually explaining the results. - A test automation tool for defining custom data-centric assertions- Various web-socket based dashboards providing real time updates on the health and status of the system- NuGet packaged client and plugin frameworksDesigned a service bus NuGet framework to provide the following enterprise messaging patterns and features:- Publish/Subscribe, Competing Consumer, Multicast, Directed Send, RPC, Poison Message Handling, Message Envelopes, Retry Queues- Automatic infrastructure configuration for dynamically creating queues, virtual hosts, etc on a centralized broker- Ability to pause queue subscriptions and fine tune concurrency settingsCreation of shareable automated build, testing and deployment processes using Jenkins Show less

    • Senior Software Engineer
      • Oct 2014 - Mar 2015

      Redesigned Single-Sign-On application to improve deployment process, make it technology-agnostic so that non-C# applications could use it, and remove performance degradation that was present on each web request. Fostered adoption of an internal NuGet server for hosting shared frameworks. Performed code reviews and mentoring.

    • United States
    • Financial Services
    • 1 - 100 Employee
    • Senior Software Engineer
      • Feb 2014 - Sep 2014

      Pangea started with the mission to improve the money transfer experience for cash consumers. We've been working to create a payment platform that will enable consumers to transfer funds internationally through a mobile app, web portal and retailer partners. Pangea’s remittance solution will include flexible payment vehicles, an enhanced user experience, significant cost savings and an industry leading compliance and risk analytics platform. Pangea is venture backed by KGC Capital, Chicago Ventures, Jump Capital, BW Capital Partners, OCA Ventures and leading angels. Our Board, Advisers, Investors and Team draw from experiences at iconic companies like Walmart, Walgreens, First Data, Redbox, Starbucks, and American Express among others. For more information, please visit www.gopangea.com Show less

    • United States
    • IT Services and IT Consulting
    • Senior Application Developer
      • Nov 2011 - Nov 2013

      Mentored junior-level developers and performed code reviews. Participated in Design and Development of an integration process for aggregating data from various systems in various formats into our domain using Domain Driven Design and the Command/Query model. Technologies included MassTransit over MSMQ for Message Bus queueing, Ninject for IOC, Sprache for DSL generation, NUnit and FluentAssertations for UnitTesting and NSubstitute for mocking. Set up continuous integration builds, automated deployments and custom Nuget packages using TeamCity Set up config transforms and build configurations in legacy WebForms applications to move environment specific web.configs into source control using SlowCheetah.Tasks Engineered a system for migrating users of our CRM product from an internal E-mail system to an external vendor and synchronizing data between the two systems using a plug-in pattern with service locator, data facades, and WCF Services on top of the MSMQ protocol Developed an internal data access framework for packaging data from two separate database schemas into a set of common DTO’s using Entity Framework, AutoMapper, repositories, and data facades Developed framework classes and utility methods to speed up development time and improve code consistency Show less

    • Web Developer
      • Jun 2011 - Nov 2011

      Leading development of next-gen buyer portal, implemented with MVC3, LINQ to Entity Framework, the Razor view engine, HTML5/CSS3, and training associates in use of the same. Key Responsibilities have included implementation of localization architecture, branding capability, developing policies for clean separation of business and persistence layers, and development of spatial search algorithms. Other technologies involved: Bing Maps 7 API, jQuery & jQuery templates, 51Degrees.Mobi foundation for mobile detection Show less

    • Targeting Analyst
      • Apr 2009 - Mar 2010

      Primary responsibilities included review of multiple source intelligence reporting for analysis and selection of high value individuals for targeting purposes. Through personal initiative, mission requirement, and observed needs for improvement, developed new intelligence products, not required of my position or rank, to assess persons of responsibility for large scale attacks. Furthermore, learned, implemented and taught the use of new link analysis and database management software never before used by my unit. Selected Achievements:Developed standard operating procedure for Axis Pro database softwareTrained multiple classes for over 50 cumulative students on Axis Pro database softwareWith help of teammates, entered over 10,000 entities into Axis Pro databaseDeveloped and maintained target packages for over 30 persons of interestsDeveloped a professional network of contacts from all units conducting similar operations for purposes of intelligence sharing and corroborationDeveloped reputation which expanded outside of my own network as the subject matter expert for Shia extremist activity in southern Iraq Show less

    • Satellite Communications Equipment Operator
      • May 2004 - Apr 2009

      Primary responsibilities included maintenance and operation of 3 multi-million dollar satellite communications vehicles used to establish connections to secure intelligence networks from remote locations including our division headquarters in Basrah, Iraq. During early stages of this position, experienced and trained personnel were reassigned to other positions throughout Minnesota, leaving me the sole operator without any formal training or experience.Selected Achievements:Developed network of contacts with the equipment manufacturers to aid with operation and troubleshooting remotelyDeveloped intricate working knowledge of the equipment beyond basic operator level functions, saving the unit the cost of having to fly in contractors to troubleshoot faulty equipmentEstablished the only available means of connecting to a highly secure network from our location in Basrah, IraqTrained 4 individuals in the basic operation and maintenance of the equipment Show less

    • Television Services
      • Sep 2007 - Dec 2008

      Primary responsibilities included filming campus events, learning and utilizing film editing software, operating interactive distance education classrooms, and working on a remote broadcast team. Primary responsibilities included filming campus events, learning and utilizing film editing software, operating interactive distance education classrooms, and working on a remote broadcast team.

Education

  • University of Wisconsin
    Forensic Chemistry
    2005 - 2009
  • ITT Technical Institue
    Software Development Technology
    2010 - 2011
  • Academy of Art University
    Illustration
    2004 - 2005

Community

You need to have a working account to view this content. Click here to join now