Ink, Inc.

Software Engineering

Software engineering, built beside the brand.

TypeScript platforms, Rust services, desktop and mobile apps, and bespoke SaaS — for companies that need the product and the market around it to move together.

Ink, Inc. is a Brooklyn studio. The marketing practice is still the work many clients hire first. Software engineering is the same studio building the product itself: the application, the mobile client, the desktop tool, the API other systems call.

We pick a stack because it fits the job, then we stay inside it. A web product does not become a Rust rewrite, and a phone app does not become a responsive site, unless that is the decision we wrote down with you.

Marketing — strategy, content, and campaigns — stays its own practice. See agency services.

Choosing a surface

Match the practice to where the work happens

The practice pages go deeper. This is the short version we use in a first conversation.

Software engineering practices by product surface
SurfacePracticeChoose it when
Web productTypeScriptThe product is a URL, and the team should share one language.
Services and coresRustSpeed, concurrency, or a small native core is the requirement.
DesktopTauriPeople work with local files, devices, or an installer.
Mobile, TypeScriptExpoBoth app stores, one TypeScript codebase.
Mobile, nativeSwift & KotlinThe platform UI and APIs are the feature.
Mobile, DartFlutterOne drawn interface should match on every device.
Multi-tenant productBespoke SaaSYou sell accounts, roles, and plans on shared infrastructure.
IntegrationsAPIs & platformsOther software has to call you, or your systems must sync.

Engagements

Four ways to start

New product

From a sharp brief to a launched application, including the accounts, empty states, and release path.

Embedded engineering

Senior engineers inside a team you already have, working in the repository and the rituals you use.

Modernization

Replace a fragile slice of the stack without pausing the business the old system still runs.

Product care

Releases, fixes, and measured changes after launch, on a cadence you can plan around.

How an engagement runs

From brief to a product you can run

Discover

Goals, users, constraints, and the systems that already exist. We leave with a written scope, not a slide.

Architect

Stack, boundaries, and a delivery plan. The choice of TypeScript, Rust, Tauri, Expo, native, or Flutter is made here.

Build

Working increments in your repository, with previews you can click before a milestone is called done.

Evolve

Release, watch the errors, and change what the product taught you. Care is a phase, not a leftover.

Questions

Before the first working session

Which stack should we pick?

Start from the surface people use. A URL points to TypeScript. A phone points to Expo, Flutter, or native, depending on whether you want one TypeScript app, one drawn UI, or two platform clients. A desktop tool points to Tauri. A service that has to be fast or strict points to Rust. SaaS and APIs describe the shape of the product, and they usually sit on TypeScript with Rust where a worker earns it. The practice pages say when to switch.

Can you work in a codebase we already have?

Yes. Embedded engineering and modernization are normal engagements. We read the repository before we propose a rewrite. Replacing a working system is a decision with a cost, and we will say so.

Do you only take greenfield products?

No. New products are one of four ways we work, next to joining your team, replacing a fragile slice, and caring for something already in production.

How does this relate to your marketing work?

They are separate practices that can share a client. Marketing covers strategy, content, and campaigns. Engineering builds the software. When you want one studio accountable for the product and the market around it, we plan them together instead of handing you off.

Where does the work happen?

The studio is in Brooklyn. Engineering engagements are remote-friendly, with working sessions as the project needs them. The repository, previews, and issue tracker live where your team already works.

Have a product in mind? Let’s scope it.

Get in touch

A practice, a codebase, or a rough brief is enough to start.

Start an engineering conversation

Tell us what you are building, what already exists, and which surface matters first. We will reply with a point of view.