Skip to Main Content

Engineering principles

Our engineering principles exist not as a rulebook but as an encapsulation of our approach to the work we do, both when our hands are on and off the keyboard.

We are engineers, not coders or developers

  • Engineers participate in idea generation. We’re as invested in the “why” as the “how.”

  • We are “π-shaped” people with at least two areas of deep expertise as well as a breadth of knowledge and ability.

  • We have front-end, back-end, mobile, infrastructure, and data engineering capabilities.

We work as part of a team

TXI engineers collaborate with clients, colleagues, and the open-source community, balancing the present and future, the visible and invisible, and driving innovation through the possible, necessary, new, and proven.

Engineering principles

Our framework

The beginning of a project may be the most glamorous phase, but the ongoing care of a product is just as important. At TXI, we embrace this reality. TXI engineers architect and write code to sustain the product’s viability for years to come. We value things that contribute to the health of technology, even if they’re unseen or less tangible: sustainability, maintainability, accessibility, adaptability.

You’ll find members of our team poking at things like security and dependency upgrades––things that won’t shatter the user’s world but that ensure that the tech and therefore the company that owns it is in the best possible position to embrace the next pivot.

Preparation is essential for innovation, and we strive to make sure everything we build and maintain is ready for the future needs of the business and its end-users.

At the highest level, TXI’s job is to manifest brand-new digital products in the world. We are creators, tinkerers, and architects, in the most literal sense. The engineering team embraces this identity wholeheartedly.

While the work of writing code is often considered rational, logical, left-brain stuff, we see it differently. Because our engineers have direct contact with clients from the earliest stages of projects, our role is a bit like that of an artist given a commission: we take fuzzy human expressions of need and turn them into tangible products. We deploy our coding skills to an immensely creative end.

We also see the work of coding as more than simply choosing the “right” option. There often is no “right” or “wrong”; there are too many forces to balance for clear-cut answers, and so we must bring creativity to our work to achieve our clients’ desired outcomes.

What's more, the engineering team’s job goes beyond writing code. We influence and help shape products from the earliest client conversations. Regardless of whether we are coding or not, our primary objective is to artfully solve problems that generate delight for all of our users.

Our engineers work in integrated teams with TXI’s design and product leaders. They collaborate with client teams to build together and learn from each other. We recognize that we are capable of better outcomes when we tap into the knowledge base we have as a collective and look to our engineers to contribute to definitional work, idea generation, and innovation efforts that exist outside of code alone.

Our focus on collaboration also encompasses how our engineers work together as a practice. Collective code ownership is a principle of Agile development, and we strive to spread the understanding and knowledge about a given project across our engineers.

We practice pragmatic pair programming, so while we don’t pair 100 percent of the time, we pair often. Pragmatic pairing amongst our skilled engineers encourages knowledge sharing and cohesive code, improving speed to value for the end user.

Engineering capacity in any organization is finite, but software innovation is an evolutionary process. While we’re often deep in code, we never lose sight of what our technical work is in service to, which makes us an enormously pragmatic group. We pride ourselves on our business acumen and empathy for users.

We are always working to balance the needs of users, the business, and the technology. Sometimes that means building with a proven tool so we can launch quickly instead of a more powerful new tool we’d have to learn. Sometimes it means making essential improvements iteratively, alongside the release of new features, when we’d love to do a massive refactoring upfront. Our goal is to navigate the complex space of technical decisions rarely taking a single decision to its extreme.

Nothing in the world exists in stasis. We embrace that reality and aim to work in a way that moves us continually forward.

The landscape of technology deployed in the service of custom solutions is vast and ever growing. Our focus is on learning and growth. We actively seek out new information and new technology that can improve what we build and how we build it.

We are committed to ongoing improvement: of ourselves and our skills, of our team and its operations, of the products we build and how we build them. We seek out and adapt to feedback. We also examine data from the products themselves to understand the ways users interact with those products and how we might improve them. This posture results in a team that is ready to hit the ground running in complex scenarios with skills at assessing what needs to be researched and decided early, and what is safe to be explored in the future.

Blog

Why integrated engineering teams outperform their siloed counterparts

Let’s start a conversation

Let's shape your insights into experience-led data products together.