Subscribe via RSS

Engineering Blog

  • AugmentedDriver, an Automated Framework for Web, Android and IOS E2E tests

    At SalesforceIQ, we deploy to production every day. A year and a half ago, we jumped onto the Automated End To End (E2E) Testing wagon, using WebDriver and Appium. The idea behind this was to have a last line of defense in our process that would give us more confidence in our daily release. It had to be fast and reliable, two features not typically associated with E2E automated tests.

  • Serverless APIs and User Authentication

    With the advent of new services such as Amazon’s AWS Lambda and API Gateway, there is finally a path towards end-to-end API creation and service without having to ever spin up a server instance. Tech demos of the services have whet our appetite by showing the speed and flexibility of Lambda, and the ability to hook up to Internet accessible endpoints with API Gateway, even doing data lookups with DynamoDB. However, we never get a full workflow because they don’t talk about the most important part of an API: authentication of the user, especially through a federation service using a protocol like OAuth. In this article, we will show how we glue the aforementioned services together, and some additional tooling built to make deploying these services a bit easier.

  • Up The Rabbit Hole: Part I - A docker-machine DNS server

    A couple weeks ago, our front-end team decided that gulp just wasn’t providing us with a lot of benefits and that we’d prefer to work without it. Thus began the effort of “degulping” our builds. This has turned into quite a project that’s involved writing a new build script, learning about headless browser testing, and overhauling our local development environment.

  • 4 Steps to Java Logging Nirvana

    I have never met an engineer that worked with Java and hasn’t struggled to configure logging. A legacy of poor decisions has made a mess of the ecosystem, but there is hope and a clear path forward. Follow these simple steps and you may grow to love java logging like the crazy uncle it is.

  • Setting up the new home for

    Welcome to the new home for The Engineering Blog! When RelateIQ was younger, we managed a WordPress blog where we could push a lot of cool content. This worked well for us, and it enabled us to write about a bunch of cool things, from clojure and docker to how we launch features and how we turn ideas into reality.

  • The One Thing to Keep in Mind When Building an API

    As companies use more and more SaaS services, APIs have become increasingly important because they allow these services to work in concert.  For us at RelateIQ, we’ve designed our API around common standard practices (REST + JSON) to make it as easy as possible for customers and 3rd party developers to integrate with our RelateIQ. On the flip side, we also put a lot of thought into how we as engineers can make it easier to build our API. Fundamentally, just like with our external API, we believe that reducing the barrier to doing the right things leads to the best and most efficient results.