Last updated · 29 October 2024

Front-end development

As Front-end Developers at Significa, we bring project visions to life by crafting high-quality, custom-tailored solutions. We aim to transform designs or ideas into fully functional and enjoyable user experiences.

However, this role is about more than just writing code. We collaborate closely with designers, UX/UI specialists, project managers, and other stakeholders to ensure that the user interface aligns with our design principles and meets the needs of both clients and end-users.

Attention to the small, big details

Small elements can have a significant impact on the final product, so Front-end developers need to be detail-oriented. While we strive for pixel perfection, we take it with a grain of salt, recognising the fluid nature of screens, which often require us to define specifics for various screen sizes. This applies to unexpected interactions and little nuances that make quite a difference. As a Front-end developer, having a passion for design, interactions, and smooth experiences is a huge plus. To create the most enjoyable and user-friendly experience possible, we should always aim to go beyond the basics — as we state in our Manifesto, good enough will never be enough.

Design systems

Nearly all projects begin with creating a design system to ensure consistency. By establishing a predefined set of values to use across projects, we eliminate guesswork and prevent outliers in typography, colours, and spacing. This approach fosters a cohesive look and feel, making our designs (and its implementation) more effective and unified.

Components

We often develop our basic UI components in isolation to optimise the developer API and ensure they respond correctly to various factors, such as properties, screen sizes, reduced-motion mode, and dark mode. By separating simple UI components from business logic, we create a consistent design system that prioritises a positive developer experience and is reusable across all products in our ecosystem. For more details, dive into all things Tokens, Primitives, and Components.

Ensuring quality

Quality is the cornerstone of everything we do at Significa — you likely already know that. In case you need a refresher, head to Technical elements of quality. For Front-end developers, it's not just about getting pixels on the screen; a maintainable and consistent codebase with solid standards across projects is crucial.

All our Front-end projects are developed in TypeScript, adhering to strict linting rules and using Prettier for consistency. We also implement Git hooks and continuous integration to validate code quality. Finally, every project undergoes a quality assurance stage, where we manually test against our design standards, interactions, and web metrics and check for bugs.

Keeping dependencies updated is crucial for both project health and security. Regular updates help us dodge vulnerabilities and performance hiccups while bringing in the latest features. To keep things fun, we’ve introduced the Dependency Eggspert — a gamified approach that encourages our devs to stay on top of those updates. And yes, of course, there’s a leaderboard to spark some friendly competition!

Testing

At Significa, we don't believe full test coverage automatically equates to better code. Instead, we aim to balance strict type safety with TypeScript — which is incredibly beneficial — and unit testing for functions with added complexity.

In addition to unit testing, interaction testing is crucial when developing components in isolation (e.g., ensuring clicking an accordion reveals the content with the correct DOM attributes). In some cases, end-to-end testing may also be useful.

We also implement accessibility tests for isolated components. This is a low-effort, high-reward practice that helps identify common Accessibility issues, such as insufficient contrast.

Beyond code

As a Front-end Developer at Significa, it's essential to go beyond just writing code. A solid understanding of good design and developing The designer’s eye is a fundamental part of your role.

We craft high-quality, custom solutions that bring project visions to life, transforming designs into fully functional and enjoyable user experiences. Crafting beyond code and collaborating closely with designers, UX/UI specialists, project managers, and other stakeholders ensures our user interfaces align with design principles and meet client and end-user needs.