Engineering Spotlight: Intralinks
Intralinks has pioneered the virtual data room (VDR) and their technology is trusted by 99% of the Global Fortune 1000. The company's secure digital platform is the foundation for managing the process for some of the world's largest transactions, like Amazon's acquisition of Whole Foods.
We connected with the team at Intralinks to give you an inside look at their engineering organization, the different technologies they use, culture, and more!
Also, Intralinks is hiring! Visit their BIZZpage to see their latest job opportunities.
Quick Hit Details
- Year Founded: 1996
- Number of employees: 800
- Number of engineers: 180
- Industry: FinTech
Can you share a summary on what Intralinks does?
Intralinks is a leading financial technology provider for the global banking, deal-making and capital markets communities. As pioneers of the virtual data room, our technology enables and secures the flow of information, empowering our customers to work more productively and with complete confidence. Intralinks facilitates strategic initiatives such as mergers and acquisitions, capital raising and investor reporting. Our solutions enhance these activities by streamlining operations, reducing risk, improving client experiences and increasing visibility.
According to your website, you work with 99% of the Fortune 1000 and have executed over $34.7 trillion worth of financial transactions on your platform, which is very impressive. Can you share some customer examples?
In M&A, Whole Foods Inc. used us in their acquisition by Amazon for $13.6B; Starbucks used us to divest of Tazo, a leading specialty tea brand, to Unilever for $384M; Spectra Energy used Intralinks in its merger with Enbirdge—a $43.1B transaction. Check out more customer examples here.
What are some of the different technologies that the engineering team gets to work with and at what scale?
Well, Intralinks was doing SaaS long before we called it SaaS. With more than 20 years of service and platform evolution, we run a wide range of technologies on both back-end and front-end. Our pragmatic Service-Oriented Architecture permits us to maximize the ROI of legacy investments while modernizing and evolving to a contemporary micro-service architecture almost without constraint.
We are running Java and Node.js. Services implement their business logic by leveraging different types of persistence layers or databases like: Oracle, Casandra, Postgres, Mongo or JanusGraph—our architects and developers are able to choose whatever best suits their needs and objectives. All services, old and new, communicate through REST and messages using different middleware options such as Coherence, Infinispan, AMQ, and RabbitMQ. Of course, we try to balance the independence with which our teams can make technology choices with opportunities to consolidate as the platform continues to evolve.
Our deployment architecture is cloud-agnostic and highly automated. In a federated deployment model, we currently serve out of 4 regions in the world using different cloud technologies.
To support the demand of our customers, our services run in both a colocation model, using VMWare and Kubernetes, and in public cloud using our abstracted cloud builder tool. The deployment is mostly done through an automated pipeline initiated by a simple Jenkins job. The formation of the cloud is defined by a home-grown tool that abstracts the target cloud while the provisioning is done using Chef. Our Infrastructure as Code team takes advantage of a set of great open source tools including Kubernetes, Helm, Prometheus, and Consul (so you see a lot of cool-kid ‘I use this’ stickers on laptops).
Security is our business and a core value. Data is encrypted in all states – in motion and at rest. The security process involves a comprehensive list of code scanning tools including Sonar, Veracode, and BlackDuck, as well as dynamic tools from several commercial providers.
On the frontend, initially written using Backbone, Bootstrap and Sass, our web apps are re-architected and being reimplemented using React. Our mobile apps are currently native, written based on Swift for IOS and Java (obviously) for Android. We’re looking forward to leveraging React Native for mobile development as well.
Our data analytics stack run out of AWS using a range of services including S3, RedShift, Aurora and other infrastructure services.
We’re a fan of automation. Aiming to implement a complete CI/CD pipeline, most of our quality, performance and release engineering is done using a home-grown suite of tools, built on a set of back-end and front-end testing frameworks and tools like JMeter, Selenium, Rational Functional Tester, Webdriver.io, Cucumber, Calabash, Squish, InfluxDB, and Grafana.
In addition to our applications, our developer program for third-party developers provides access to our RESTful API, which they use to implement commercial products or custom integrations.
There are many components to your different products. How is the work distributed across the engineering team?
Sure, let me first explain the structure of the R&D and our development methodology. In addition to Product Design and Security Architecture, our R&D organization is divided into three big groups that focus on different aspects of our SaaS stack:
- Applications - which includes web, mobile and native apps teams
- Platform - which includes foundational services and Infrastructure as Code teams
- Shared Engineering - which includes automation and performance frameworks teams, database architecture teams as well as release engineering teams.
At a high-level, this structure follows our architecture blueprint that describes the layering of the stack. The groups are composed of Scrum teams of size 3 to 6 members, of different skills and expertise, including engineers, designers, architects, and DevOps. The scrum delivers production-quality software in an end-to-end fashion. For sizeable components, multiple teams can form a Nexus and work together on the same backlog managed by one Product Owner. So, following this structure, naturally, the Nexus picks the components in their area of focus and the teams within the Nexus pick their epics from the Nexus backlog.
Security is definitely a topic of discussion everywhere these days and it is obviously a key piece to your platform. How does an engineer factor in security when he/she is developing new features and functionality for your products?
For an engineer at Intralinks, security starts from mandatory secure coding training—they need to take annual training in technology relevant to their day-to-day work. Our Definition of Done for any new component includes passing the threat modeling report review. Lastly, if they have made mistakes in coding or included open source component with security vulnerabilities—which should not happen often—the build will be broken, and they will need to address reported issues in order to pass the security gate. Some engineers may choose to take additional training and become Intralinks Security Champions and help Scrum teams to follow secure development lifecycle and produce working secure code.
What are some of the interesting projects that the engineering team is tackling?
Here are few that come to mind:
Trinity. We are implementing our architecture blueprint by developing an ecosystem of next-generation microservices that will streamline the development of new purpose-built applications and increase the scalability of existing ones. Teams are implementing interesting distributed architecture techniques using async interconnects and event sourcing mechanisms, and tackling interesting problems with eventual consistency management.
Insights. The teams are working on predictive analytics algorithms and indicators that provide our customers with more context-driven information in intuitively consumable dashboards so they can more effectively prioritize their activity outside the virtual data room.
Morpheus. A home-grown platform as a service (PaaS) offering based on Kubernetes for deploying and running light-weight extensions to our platform, developed by our internal Professional Services team, or certified 3rd parties, using our API’s and Docker containers.
Red Pill. This is a project that leverages Blockchain technology to further separate us from the competition in our chosen markets.
Does your engineering team have a chance to work on projects outside of their day-to-day responsibilities? For example - skunk work projects, open source projects?
Yes! Our engineers participate in hackathons where they develop hacks and let students use our platform to implement some of their ideas. We also have developed an innovation program where innovation time is a ‘right’ – just like personal time-off. Our people can submit their innovation ideas and find sponsors to develop them within the extended team. We also plan to materially increase our participation in the open source community as contributors to a variety of projects.
What is the culture like at Intralinks for the engineering team?
Intralinks R&D team is a very close-knit group of people. In fact, we hear from some who have left the organization how they miss the close and collaborative team culture in the R&D group. Sure, there are occasional professional disagreements, but the team really values openness and willingness to help other team members. The team has extremely mature technical depth so there is always a way to get some advice from experts in their field. Brown bag lunch-and-learns are a regular occurrence and teams go above and beyond in their extra time to work on some proof of concept or demonstrate new cutting-edge technologies in action.
Of course, there is time to have some fun. Every other Thursday, teams get together in our break room to introduce and share their culinary delights. Irish, Asian, Latin, Russian are some of the examples of food that everyone gets to taste. When folks need to unplug, they battle each other playing ping-pong in the dedicated soundproof room (it does get noisy in there).
Overall, Intralinks is an interesting and challenging place to work. If you love the freedom to innovate, design and code, if you have, or striving to gain experience in security, automation, programming, DevOps or design, if you want to lead, challenge, grow and have fun, then Intralinks is the right place for you.
What can a potential employee expect during the interview process?
Our people are our most valuable asset. So, based on this vision, the interviews are really simply focused on assessing how much the potential employee can help, motivate, team up, teach, learn, innovate and elevate our abilities and values. We are not looking for perfect and ready. We’re looking for people who carry these values.
Rapid Fire Q&A
What’s on tap?
During our get-togethers, you can find the best microbrews, hard cider and a selection of fun wines.
Star Wars or Star Trek?
After 21 years in the cloud, we are now headed to a galaxy far, far beyond.
Coffee - hot or iced?
We have anything from lattes to cold brew. Life is too short to drink bad coffee.
Favorite employee perk?
Our employees love our flexible schedules. While we love working together with our teams we are also very interested in NOT sitting in traffic. We love working together from wherever we are.
What music is playing in your office?
We love music - though it is quiet in the office to allow for collaboration and problem solving during the day. When we get together as a company for fun, you may hear Folk music from anywhere in the World and of course some good ole Rawk and Roll!
Pick a candy that best describes the engineering team.
Bullseyes – They are interesting and stick with you a long time.
The "most fun" desk:
WHY I WORK HERE
Ridhima Mahajan (Senior QA Engineer, Automation, Waltham)
“I work in Intralinks because of the people and awesome culture. There are a great support and close bonds with all my coworkers which I really enjoy and cherish. I'm surrounded all day by brilliant, thoughtful, and ambitious people full of aspirations. I really appreciate flexible hours and working from home benefits here. Intralinks uses all the new and cool technology, which always gives me an opportunity to learn and grow further in my career. Not to forget, we have biweekly “Team Thursdays” with great beverages and food of different cultures, which we all look forward to :)”.
Swami Rajamohan (Principal Software Engineer, Waltham)
“Intralinks as a workplace has been feeding with me with a variety of challenges to be solved which has driven me to seek out and develop innovative means of tackling them. Working here allows me to discuss ideas with a lot of great minds who provide multi-dimensional viewpoints as part of my day to day work. Our engineering leadership constantly encourages me to continually expand my technology boundaries keeping abreast of the newer practices across the industry.”
Monica Tudora (Senior Android Developer, Bucharest)
“I chose Intralinks because it offered me the opportunity to work in a new field and learn what a virtual data room is and how this helps important mergers and acquisitions. I still choose Intralinks because of the people that work here, the will and drive to create better, more efficient and stable products.”