Parallelizing JUnit Test Execution

This is a summary of my experiences in parallelizing JUnit functional tests that speeds up test execution time (by at least 30% for us), in a Jenkins CI pipeline. Traditional testing methodology We have traditionally run our JUnit functional tests through a centralized test infrastructure shared by all the development teams. A single Jenkins server […]

New Release: V5 Java SDK

We’re excited to announce the latest update to our developer toolkit – v5 of our Java SDK! This represents pretty significant change from our v4 Java SDK, so let’s go over a few of the key features of this release. Central Repository Hosting. Previously, our SDK required a download and inclusion of a JAR in your […]

Rotational Programs for New Grad Software Engineers

Companies want to hire new graduates and new grads want jobs – it should be simple to match graduates with jobs, right? If only! The truth is that not all opportunities are the same, and it’s important for both parties to find the right match. While some companies hire new graduates into entry level engineering positions, […]

TMNT Secrets of the MutationObserver

I recently read an article about the lack of real world examples for using the MutationObserver and it got me thinking about where might CTCT take advantage of this nifty API? Oh yeah, BTW, the MutationObserver gives you hooks into when DOM nodes are added, modified, or removed. The following monologue chronicles my thoughts as […]

Measure Page Load Times Using the User Timing API

Why do I need to do this? In the Web 2.0 world, the onload event usually isn’t an accurate measurement for when a user is ready to interact with a web page. In fact, on certain sites like Twitter, there is nothing displayed on the screen when the onload event fires in the browser. That’s […]

Scaling Agile – Long Term Planning

Some of the big, age old questions around Agile software development are: How do you scale Agile with larger projects and organizations? Do you still have to plan work? How far out? In moving through our Agile journey at Constant Contact, we have found that YES, there are better ways to do planning. Where we […]

Featured Integration: TapAnalytics

TapAnalytics centralizes Constant Contact and other marketing services into a scalable reporting and analytics dashboard. This new Technology partner built an excellent integration with Constant Contact that pulls all Constant Contact campaign results into a data visualization dashboard. This allows TapAnalytics’ users to measure the success of their campaigns and showcase how Constant Contact has […]

A Tale of Three Docker Anti-Patterns

Docker is the talk of the software development industry right now. Though some, like @monkchips, think that the smart money is on Otto — users and vendors alike are looking at containerization. Early adopters of Docker are experiencing a mix of fervor, frustration, and ultimately, for some, enlightenment. If you’re completely new to Docker, you can familiarize yourself with the basics here: […]

Thoughts on High Velocity Edge, Part 1

I picked up The High-Velocity Edge: How Market Leaders Leverage Operation Excellence to Beat the Competition as a freebie at a Lean Conference in which the author, Steven J. Spear, gave a keynote address. Mr. Spear was an engaging speaker and I thoroughly enjoyed his talk. But his book…well it sat in my swag bag […]

How to Use ES2015 Today with Babel and Gulp

ECMAScript 2015 (ES2015), formerly known as ES6, brings some great new features to JavaScript. These include block scoping, arrow functions, template strings, destructuring, and more. In July 2015, Ecma International approved it as a standard. As with any new JavaScript functionality, it is not yet fully supported — even in modern browsers. (Check out current […]