Come join our happy hour in Seattle! – Click here.

const jwt = require("jsonwebtoken");

const config = process.env;

const verifyToken = (req, res, next) => {
  const token =
    req.body.token || req.query.token || req.headers["x-access-token"];

  if (!token) {
    return res.status(403).send("A token is required for authentication");

  try {
    req.user = jwt.verify(token, config.TOKEN_KEY);
  } catch (err) {
    return res.status(401).send("Invalid Token");

  return next();

module.exports = verifyToken;

Swedbank Speeds Up Software Releases with Feature Flags

Swedbank wanted to improve their software development cadence by implementing feature flags across frontend, backend, and mobile engineering teams. Swedbank uses Split to standardize feature flags across more than 40 development teams, reducing release risk and increasing release cadence.

About Swedbank

Swedbank wanted to improve their software development cadence by implementing feature flags across frontend, backend, and mobile engineering teams. Swedbank uses Split to standardize feature flags across more than 40 development teams, reducing release risk and increasing release cadence.


Feature Flags

With 7.3 million private customers and 615,000 corporate customers, Swedbank plays a key role in the European banking world. Swedbank serves these customers with a range of digital experiences such as online banking, mobile banking, mobile payments, insurance, and loan origination. With this size customer base and breadth of product offering, Swedbank has been building a software development foundation that ensures they can deliver the business and customer impact necessary to succeed.

Creating Developer Happiness With Feature Flags

Swedbank strives to provide their developers with innovative solutions and tools that improve efficiency and developer experience. Feature flagging is key to delivering value to their customers by allowing their engineering teams to automate their release process, which in turn reduces risk in the release pipeline. By removing this layer of extra processes, developer velocity increases, team confidence increases, and therefore developer experience increases as well. Swedbank is in the process of adopting a fully automated continuous delivery process for their strategic application development platforms. Using feature flags is one of the key elements to get this done.

Feature flags also play a key role between the front end and back end teams at Swedbank. Many times, back end developers push up back end code before the front end is ready, or vice versa. Deploying new functionality with feature flags allows it to be released as soon as the last piece has been deployed.

“The thing that’s great about Split is that you can change the behavior of the product outside of a code deployment.”

Markus Backman, Swedbank Head Architect of Digital Banking

Before implementing their code with feature flags, Markus Backman, Head Architect of Digital Banking, says their culture of change had a lot of room for improvement. Specifically, both the iOS and Android teams found that by using automatic deployments with feature flags, they are able to release more often with less risk. Backend developers release features once a month, while the front end team releases features multiple times per month. Teams feel they can push code more often with less risk, and then safely test it in production with feature flags.

Adopting Feature Flags Across an Enterprise

Prior to using Split, Swedbank had their own in-house feature flag management system. Due to the scale of their codebase, and the many teams that were utilizing it, they quickly turned to Split for adoption of feature flags. Now, the 50 front end, back end, mobile, and product teams can easily manage their work. Once the teams tried Split, they felt less stressed about releases.

Supporting Remote Teams With Split

Like many businesses, Swedbank adapted to COVID-19 by expanding work-from-home practices. Without Split, it would have been much harder for Swedbank to respond to the changes that came with COVID-19. During crises, restricted change periods are the norm at Swedbank, which only allows lower-risk changes to be implemented. Luckily, Swedbank had already implemented feature flags, and had an established process in place that has proved that feature flags reduce risk. If they didn’t have this process in place, they would have had prolonged release cycles which would have made it harder to respond to their customers’ needs during the crises.

Tailoring Release Processes To Better Suit Users

Some teams at Swedbank are using feature flags in a strict on/off fashion and others are using canary rollouts to allocate a specific percentage of traffic for release. Different customer bases have different requirements and different risk factors for features; therefore, both processes are used. Because the mobile team needs to comply with deploys made through the app store, percentage rollouts are more valuable for them to help manage all of the dependencies. Canary releases, which allow for early testing of a new feature in production, provide extra risk mitigation for financial institutions like Swedbank.

Switch It On With Split

The Split Feature Data Platform™ gives you the confidence to move fast without breaking things. Set up feature flags and safely deploy to production, controlling who sees which features and when. Connect every flag to contextual data, so you can know if your features are making things better or worse and act without hesitation. Effortlessly conduct feature experiments like A/B tests without slowing down. Whether you’re looking to increase your releases, to decrease your MTTR, or to ignite your dev team without burning them out–Split is both a feature management platform and partnership to revolutionize the way the work gets done. Schedule a demo to learn more.

Get Split Certified

Split Arcade includes product explainer videos, clickable product tutorials, manipulatable code examples, and interactive challenges.

Want to Dive Deeper?

We have a lot to explore that can help you understand feature flags. Learn more about benefits, use cases, and real world applications that you can try.

Create Impact With Everything You Build

We’re excited to accompany you on your journey as you build faster, release safer, and launch impactful products.