Sharing Our Passion for Technology
& continuous learning
  • 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...
  • Slippers lined up on a wall

    Summer in Review: Apprenticeship at Source Allies

    Source Allies had three apprentices during Summer 2020! They got to learn and gain experience with test-driven development, pair programming, cloud infrastructure, mobile development, and much more. Each apprentice had their own unique experience over the course of the summer, and gave a presentation in August to showcase their growth...
  • 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...
  • testing 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...
  • A person working on some sweet tests on their computer

    Cypress for End-to-End Testing: An Overview of the Platform and Its Uses

    This blog is part of a series on end-to-end (E2E) testing in Cypress. In this post, we will take a look at what Cypress is, why our team chose it, and things you may want to consider when evaluating it for your own projects. Future posts will expound upon how...
  • Colored pipes in an industrial setting

    Event Sourcing

    Software development teams are responsible for building a wide variety of software to solve a wide variety of problems. Many of these software development projects implement business flows that have defined activities completed by specific parties. An architecture that implements these flows by mixing validation logic with record updates becomes...