Sharing Our Passion for Technology
& continuous learning
  • A collage of different aspects from Hackathon from finding fall leaves, creating technology themed play-doh sculptures, putting together Hackathon hack packs, showing off our Source Allies gear, showing off the fnished projects, and lego creations.

    Flip the Script: Hackathon 2020

    This year Source Allies hosted our third annual internal hackathon. Our goals for this year’s Hackathon were to involve more teammates both in the planning and participation of Hackathon, adapt gracefully to unknown changes along the way due to Covid-19, continue to have projects be successful by the end of...
  • A bearded person wearing glasses writing code in light mode with other teammates in the background

    State Management Anti Patterns

    Angular State Management Anti-Patterns When looking at an Angular application, there are several powerful state management techniques available. There are built-in component bindings like the input and output bindings, services using RxJs and observables, and state management libraries like NgRx, Akita, MobX and NgXs. Well managed state can improve application...
  • default icon

    Case Study: e-Delivery Platform Development and Adoption

    We believe companies that invest in great technology products can achieve strategic competitive advantages within their market, regardless of industry or size. This can be especially true during COVID times, when companies are looking for ways to make it easier to connect with their customers. Accessibility and product ease can...
  • Piles of book

    Decluttering importance and how to do it

    I am glad you are here! Let’s talk about decluttering. The straightforward explanation of Decluttering as per Google is getting rid of stuff you don’t need or use anymore. For me it is a lot more than letting go of items. For me, it changed my perspective of looking at...
  • industrial worker looking at schematic plans on his phone in a factory setting

    Case Study: Delivering Mobile Solutions at Your Fingertips

    DEFINING THE PROBLEM Our global industrial automation manufacturer needed a platform that allowed sales representatives and third-party technicians to view customer product details from their mobile devices. Sales reps/technicians were used to having to travel back to their office in order to access availability, pricing, and item history. As you...
  • shipping containers on a boat at night

    Dockerize Your Dev Environment: Part 2

    The previous post highlighted the struggle in having to maintain a development environment in our cross-platform, multi-language, cloud-native, microservices-oriented world. The operations side of many organizations have leaned on Docker to provide some sanity. Let’s look at how we can use containers on the dev side as well. The VS...
  • man jumping over shipping container

    Dockerize Your Dev Environment: Part 1

    The subject of this blog post is about Docker. Except, it’s not really about Docker. It’s about changing our mentality around our development environments. Specifically, about the way we haven’t yet broken free of our old patterns in setting up our development machine. To borrow the adage, this post is...
  • Woman writing on notebook and looking at charts on cell phone

    Glue ETL Development with Dev Endpoint Notebooks

    In this post I will go through a simple tutorial for using Dev Endpoints and notebooks for Glue ETL development. This tutorial will be intentionally basic, so that you can get an understanding of how dev endpoint notebooks can be useful for your ETL development without getting bogged down in...
  • default icon

    A Test-driven Intro to Java Reactor

    A year ago I joined a team which made heavy use of the Java Reactor library for their pub-sub system. Reactor is a library for high-performance, parallel programming using a functional API. The code tends to look like this: Flux.from(p) .ofType(SubscribeToShardEvent.class) .flatMapIterable(SubscribeToShardEvent::records) .limitRate(1000) .buffer(25) .subscribe(e -> System.out.println("Record batch = "...
  • Two people discussing tests in front of a computer

    How My Team Uses Cypress for End-to-End Testing

    This blog is part of a series on end-to-end (E2E) testing in Cypress. In this post, we will take a look at how our team uses Cypress to benefit our workflow and increase the safety in which we deploy new features. This information is available in this presentation I give...