A career in development is not one ladder. Higher up it branches, and the branches are not “above and below” but different work: a manager, an architect and a staff engineer answer for different things and are measured by different metrics. People walk it in every direction, backwards included, and the move back is not a failure.
Below is the portal’s grid of roles with the links between them and a list of reference competencies for each “role × level” pair. Every competency leads into the catalogue track where that topic is covered.
10 roles in 4 groups and 35 moves. There is more than one ladder here: some moves go sideways — from analytics into product, from backend into SRE — and some go back, and the portal counts a move back as a normal move rather than a failure.
Who writes the product
Development for a specific surface: server, browser, phone.
Backend developer
The server side: data, APIs, integrations, reliability under load.
What people call it: Job ads call it 'backend', 'server-side development', 'fullstack leaning towards the back'. Look at the list of tasks, not at the word in the heading.
Where people go from here
→
SRE and platform engineering
sideways — a different profession, not a promotionYour own developers become the customers. The subject changes: not a feature but reliability and tooling.
→
Data and machine learning
sideways — a different profession, not a promotionThe shortest way in is through data and queues. You will have to pick up statistics, not just engineering.
↑
Architect
deeper — the same engineering track at a larger scaleNot a promotion: the horizon grows to several systems, and you will write less code.
→
Team lead, tech lead, engineering manager
sideways — a different profession, not a promotionA different profession with different measures of success. Roughly one in three comes back, and that is normal.
Reference skills: 4 levels, 19 items
Junior
What is expected is not ready-made answers but the speed of learning and the quality of the questions.
I write and run code in my working language without looking up the syntaxI can assemble a small service from scratch: dependencies, running it, formatting, linter.Go
I understand what happens between the browser's request and the service's responseI can explain why a request returned 502, instead of saying the server is broken.Computer networks
I write SQL queries and understand what a transaction isI put together a query with a join and grouping without googling it, and I know how a transaction differs from separate queries.Databases
I work in a shared branch without breaking the history for everyone elseI resolve a conflict, open a meaningful pull request, recover a lost commit.Git and teamwork
I pin a bug down from logs and a stack trace, not by trial and errorI state a hypothesis and test it instead of changing lines at random.Programming from scratch
Middle
Holds the whole path of a feature: from incomplete requirements to running in production.
I take a feature all the way: requirements, code, tests, deployment, watching it runAfter my release there are no loose ends left for somebody else to finish.How software gets made, and careers
I write tests that catch regressions instead of repeating the codeI can explain what exactly each test checks and why deleting it would be no loss.Software testing
I read a query plan and fix a slow queryI spot a seq scan where an index belongs, and I know what an insert pays for every extra index.Databases
I design an API that will survive the next versionI can add a field without breaking old clients, and I know the price of the API style we chose.Architecture patterns
I work in old code written by other people without rewriting all of itI can change a module whose author has left, and explain why I did not refactor everything.Development principles
Senior
The pay is not for typing code fast but for the risk taken off the table.
I choose a solution by its consequences rather than by fashion, and I write the choice downDecisions have an ADR: what we considered, what we gave up, and on what conditions we revisit it.Architecture patterns
I design for failure: retries, idempotency, consistencyI know what happens to the data when the network drops in the middle of an operation, and I have accounted for it in advance.Distributed systems
I run an incident and write the post-mortem without hunting for someone to blameA post-mortem leaves behind a change in the system or in the process, not a line saying be more careful.CI/CD, infrastructure and clouds
I review in a way that leaves the other person stronger than beforeMy comments carry the why, not only the redo this; the team has a shared standard.Development principles
I see the attack surface inside my own featureI sort out authorisation and secrets before the release, not after the pentest report.Application security
Further on: a branching, not a rung
After senior the ladder forks. Stopping here is a full choice, not a ceiling.
I take on work that does not fit inside one teamI carried through a piece of work that had neither an owner nor a clear statement.How software gets made, and careers
I optimise by measurement, not by feelI start with a profile and a load test and finish with a number saying how much faster it got.Systems performance
I count the money a system costs, not only its architectureI can say what the service costs per month and which option is cheaper when it doubles in size.CI/CD, infrastructure and clouds
Frontend developer
The interface in the browser: markup, state, performance, accessibility.
What people call it: 'Frontend' in one company means building pages from mockups, in another a whole client architecture with its own backend for frontend. Ask about it at the interview.
Where people go from here
→
Mobile developer
sideways — a different profession, not a promotionSimilar problems of state and navigation, a different runtime and a different release cycle through the stores.
→
Backend developer
sideways — a different profession, not a promotionThrough BFF and APIs. You will have to pick up data and reliability in earnest.
→
Product manager
sideways — a different profession, not a promotionA common trajectory: being close to the user helps, but the measures of success change completely.
The base platform matters more than the framework: frameworks change, the browser stays.
I understand what the browser does between the load and the first frameI can explain why the page flickers and which part of that is my code's fault.Frontend development
I write markup that works without styles and from the keyboardThe form submits on Enter, and a button is a button element, not a div with a handler.Accessibility (a11y)
I build a layout that does not fall apart on a phoneI understand flow, flexbox and grid, and I do not fix everything with absolute positioning.Frontend development
I write components and understand where their state comes fromI tell component state from application state and do not duplicate the source of truth.Frontend development
I can deal with the project build, not only with npm run devI understand what happens between the source and the bundle, and I can fix a broken build.Frontend development
Middle
Owns the behaviour of a screen entirely, including errors and empty states.
I choose how to store state to fit the problem, not out of habitI can explain why useState is enough here and a cache of server data is needed there.Frontend development
I build forms that behave honestly when the network and the validation failA double click does not create two records, and a server error does not wipe what was typed in.Frontend development
I use types as a design tool, not as a formalityAn invalid state is inexpressible in my types rather than checked at runtime.TypeScript
I test the behaviour of the interface, not implementation detailsThe test does not break when a class is renamed, but it does break when the scenario breaks.Software testing
I check accessibility before the release, not after a complaintI go through my own screen with a keyboard and a screen reader, and I know where aria is genuinely needed in it.Accessibility (a11y)
Senior
Owns the client side as a system, not as a set of screens.
I hold the client architecture: module boundaries, shared contracts, other people's codeA new developer adds a screen without asking where to put the file.Frontend development
I improve load metrics from measurements taken on real usersI work from field data, not from a lab run on my own laptop.Systems performance
I choose the rendering model deliberately and understand its priceI can explain what we gained and what we lost by moving to server rendering.Frontend development
I understand the client-side classes of attack and do not rely on checks in the browserI know what CSP is for, and I do not count validation on the client as protection.Application security
I speak the same language as design and argue on the substanceI can say what is expensive in a mockup and what to replace it with, instead of just saying it cannot be done.UX and interface design
Further on: a branching, not a rung
Platform, product, management are different jobs, not different altitudes.
I build tools for other teams and answer for how convenient they areMy library has versioning, migrations and live users inside the company.Frontend development
I set the quality practice for the whole frontend of the companyThe rules live in CI, not in message threads.CI/CD, infrastructure and clouds
I pull along the work that has no ownerI took a vague problem, broke it down and carried it through to a solution.How software gets made, and careers
I raise the level of the team, not only my ownThere are people who grew up next to me and can confirm it.How software gets made, and careers
Mobile developer
Apps for iOS and Android: the platform, offline, background work, releases through the stores.
What people call it: 'Mobile developer' covers both native development for a single platform and cross-platform work in Flutter or React Native. These are very different sets of skills.
Where people go from here
→
Frontend developer
sideways — a different profession, not a promotionThe nearest neighbour in problems of state and navigation; the release cycle becomes far faster.
→
Backend developer
sideways — a different profession, not a promotionThrough APIs and synchronisation. You will have to pick up data, transactions and load.
→
Team lead, tech lead, engineering manager
sideways — a different profession, not a promotionA different profession. It shows especially in mobile teams: the release cycle starts to run you rather than the other way round.
Reference skills: 3 levels, 12 items
Junior
The platform and its limits first, frameworks after.
I understand the lifecycle of a screen and of the app on my platformI know what happens to my screen on rotation, on an incoming call and when the process is killed.Mobile development
I build screens and navigation from a mockupThe layout survives a small screen, a large font and a long text.Mobile development
I go to the network and handle the errors, not only the happy pathThe app does not crash in the underground and says clearly that there is no connection.Computer networks
I work in a shared branch and understand the team's release cycleI know where my branch merges to and what will make it into the next build.Git and teamwork
Middle
Owns a feature entirely, including offline, background work and the release to the store.
I lay the app out in layers, not in screensThe logic can be tested without launching the UI.Mobile development
I build offline and synchronisation knowing that conflicts will happenI have a rule for resolving conflicts, not a hope that none will occur.Mobile development
I work with background tasks and push notifications within the limits of the platformI understand why the system kills my background work, and I do not fight it with hacks.Mobile development
I take a release through the store and can roll backI know what to do about a bug in production when review in the store takes a day.Mobile development
Senior
Owns the app as a product with a million installed copies of different versions.
I keep startup, memory and battery within limits I measured myselfI have the numbers before and after, taken on a real low-end device.Systems performance
I protect data on a device that does not belong to meI do not keep secrets in the app, and I know that a client can always be cracked open.Application security
I build testing that survives a zoo of devicesI know what we automate, what we deliberately check by hand, and why.Software testing
I choose native or cross-platform deliberatelyI can name the price of the choice for a specific team instead of arguing about frameworks in general.Mobile development
Who owns quality and production
Work where the value is not the code written but the fact that the system neither falls over nor lies.
QA engineer
Quality as a job of its own: test design, automation, feedback into the process.
What people call it: The portal separates a manual QA, an automation engineer and an SDET. Job ads mix these three words up constantly — ask what exactly the subject of your work will be.
Where people go from here
→
Backend developer
sideways — a different profession, not a promotionThe usual trajectory, through SDET. You will have to pick up design in earnest, not just automation.
→
SRE and platform engineering
sideways — a different profession, not a promotionThrough tests in CI and observability: the subject is the same — trust in the system.
→
Systems and business analyst
sideways — a different profession, not a promotionQA is often the first to spot contradictions in the requirements — and that is half of an analyst's work.
Reference skills: 3 levels, 12 items
Junior
The main skill is not being able to click but describing what you observe so that it can be reproduced.
I use the terminology of testing the same way the team doesI do not confuse a defect, a failure and an error, and I do not argue about words at a bug review.Software testing
I design the checks instead of going through options blindlyI use equivalence classes and boundaries, and I can explain why these checks are enough.Software testing
I write a bug report that reproduces the defect on the first tryThe developer does not come back asking how to repeat it.Software testing
I check the API directly, not only through the interfaceI can send a request by hand and work out whose side the problem is on.Software testing
Middle
Answers for automation saving time rather than eating it.
I write automated tests that do not flakeThe suite has no sometimes-red tests that everyone is used to rerunning.Software testing
I wire tests into the pipeline so that their result is trustedA red build stops the deployment, and nobody treats that as an obstacle.CI/CD, infrastructure and clouds
I program well enough to maintain the test codeMy test project is no worse than the product one: it is readable and refactorable too.Python
I check more than the functionalityI can set up a load run and check the basic things about security.Software testing
Senior
The subject of the work is not tests but how far the team can trust its own release.
I build a testing strategy around the risks of the product, not around the template of the pyramidI can explain why there are few unit tests here, and it is a deliberate decision.Software testing
I catch a defect at the requirements stage, not in productionMy questions about the statement of work change that statement before development starts.Systems and business analysis
I measure the quality of the process, not the number of tests writtenI look at the time to restore and the share of failed releases, not at coverage for the sake of coverage.Project Management
I understand the forks inside quality work and choose mine deliberatelyI can explain the difference between an SDET, a process quality engineer and a risk analyst.Software testing
SRE and platform engineering
Reliability and tooling for other teams: infrastructure as code, observability, on-call.
What people call it: DevOps engineer, SRE and platform engineer are three different sets of duties under three names that keep getting swapped. Sometimes all these words hide is a general dogsbody with some YAML.
Where people go from here
←
Backend developer
back — the portal does not count this as a failureThe move back is common and is not counted as a failure: operations experience makes an engineer worth more.
↑
Architect
deeper — the same engineering track at a larger scaleWhoever has held production sees non-functional requirements better — and that is half of an architect's work.
→
Data and machine learning
sideways — a different profession, not a promotionThrough pipelines and storage. The infrastructure part is familiar, the statistics is not.
→
Team lead, tech lead, engineering manager
sideways — a different profession, not a promotionA different profession. A risk of its own: in an on-call team the manager quickly turns into an incident dispatcher.
Reference skills: 3 levels, 15 items
Entry
Almost nobody arrives here from scratch: you need experience either in development or in administration.
I live confidently in Linux with no graphical interfaceI can find what ate the disk and the processor without installing anything extra.Operating systems
I take a network problem apart layer by layer, not by rebootingI can get from it does not work to a specific place: DNS, a route, TLS, the load balancer.Computer networks
I build and run containers deliberatelyI understand how a container differs from a virtual machine and why my image weighs a gigabyte.CI/CD, infrastructure and clouds
I build the pipeline for build and deploymentThe project has a repeatable build that can be run from somewhere other than my laptop.CI/CD, infrastructure and clouds
I write code, not only configsMy scripts live in a repository, go through review and have tests.Python
Core level
Owns the platform that other teams use.
I keep infrastructure in code, not in clicks in a consoleThe environment comes back up from the repository, and we have tested that.CI/CD, infrastructure and clouds
I operate the orchestrator, not only write manifestsI understand why a pod will not start, and I can read the events of the cluster.CI/CD, infrastructure and clouds
I build observability you can run an investigation withThe dashboard shows what broke, not only that something is red.CI/CD, infrastructure and clouds
I deploy without downtime and can roll backA canary or blue-green release actually works here rather than being described in a wiki.CI/CD, infrastructure and clouds
I do not keep secrets in the repository and I can change themRotating a secret is an ordinary operation, not a special operation.Application security
Senior and beyond
The subject of the work is not servers but reliability as an agreement with the product.
I set the reliability targets together with the product and live by themThe service has an agreed level of availability, and it affects decisions about releases.Distributed systems
I design the system for the failures that are certain to happenI know the failure model of my system and what happens when the network splits.Distributed systems
I manage the cost of infrastructure as an engineering problemI can name what costs the most and propose a trade-off that does not lose reliability.CI/CD, infrastructure and clouds
I build an on-call rota that does not burn people outNight-time pages get looked into and reduced rather than counted as normal for the profession.Time management for engineers
I treat my platform as a product for internal customersThe platform has documentation, a feedback loop and a clear path for migration.Product Management
Who works with meaning and data
Roles where the main question is «what and why», not «how».
Data and machine learning
Data pipelines, models, getting models into production and an honest assessment of their quality.
What people call it: Data engineer, data scientist, ML engineer and 'AI engineer' are different professions. Some of the vacancies with AI in the title are a renamed backend job — read the contents.
Where people go from here
→
Backend developer
sideways — a different profession, not a promotionThe engineering part carries over almost entirely; the statistics goes away, the load arrives.
→
Systems and business analyst
sideways — a different profession, not a promotionData is the shared subject, but the analyst's customer sits inside the business rather than being a model.
→
Product manager
sideways — a different profession, not a promotionThe usual move for those who are tired of proving the value of a model and want to decide what gets built at all.
→
SRE and platform engineering
sideways — a different profession, not a promotionThrough MLOps: the same pipelines and observability, only the subject is a model rather than a service.
Reference skills: 3 levels, 15 items
Entry
The base here is double: engineering and mathematics. Without the second half what you get is copied notebooks.
I use probability and statistics, not only the meanI understand how a distribution differs from a mean, and why a sample can be unrepresentative.Mathematics for programmers
I get the data myself and understand where it came fromI write non-trivial SQL and know which fields in the source lie.Databases
I write reproducible analysis code, not a throwaway notebookMy result repeats on another machine and a month later.Python
I prepare features and understand that the data is always dirtyI check for missing values, outliers and target leakage before training.Machine learning
I start with a simple model and compare everything against itI have a baseline that had to be beaten, not only a neural network.Machine learning
Core level
Answers for the model being useful outside the notebook.
I evaluate a model honestly, including where it is wrongI pick the metric that fits the problem rather than the one that looks nicer, and I know the price of each kind of error.Machine learning
I build data pipelines that survive a source going downRecomputing yesterday is an ordinary operation, not a repair by hand.Data Engineering and ETL
I answer for the quality of the data, not only for the code that reads itThe data mart has checks, and they fire before the business notices.Data Engineering and ETL
I take a model to production and watch it after the launchI know when a model has gone stale, and I have a plan for retraining.Machine learning
I work with language models as an engineer, not by guessing at promptsMy solution has an evaluation of quality and an estimate of the cost per request.AI agents and prompt engineering
Senior and beyond
The subject of the work is solving a business problem, not a score on a held-out sample.
I translate a business problem into a learning problem — or say honestly that no model is needed hereI have projects I proposed to close because a rule with three conditions was enough.Product Management
I set up an experiment so that its result can be trustedI compute the power in advance and know what peeking at interim results does.Product Management
I keep the load and the cost of model inference under controlI know what a single request costs and can bring that number down.Systems performance
I see the risks of a model: the data, privacy, the harm from an errorI can name who my model's error harms and how, and what we did about it.Application security
I explain a result to people who do not read chartsAfter my talk a decision gets made, rather than a request to send the slides over.Logic and fallacies
Systems and business analyst
Turns a vague 'we need this done' into requirements you can build a system from and check it against.
What people call it: A business analyst and a systems analyst are different roles, and in small companies they are one person who is the product manager and the technical writer as well.
Where people go from here
→
Product manager
sideways — a different profession, not a promotionOne of the most common trajectories. The question changes: not 'how do we write this down correctly' but 'is this worth doing at all'.
→
Backend developer
sideways — a different profession, not a promotionPossible if you pick up engineering in earnest. Knowing the domain stays an advantage while you do.
→
Data and machine learning
sideways — a different profession, not a promotionThrough data analytics. You will have to pick up statistics and the engineering of pipelines.
→
QA engineer
sideways — a different profession, not a promotionAdjacent work: acceptance criteria are the shared subject of both roles.
Reference skills: 3 levels, 12 items
Junior
The main ability is asking questions, not producing documents.
I pull requirements out of people who cannot state themWhat my meeting leaves behind is not a retelling but a list of decisions and open questions.Systems and business analysis
I tell the kinds of requirements apart and do not mix them upI do not blend a business goal, a user scenario and a technical constraint into one item.Systems and business analysis
I write a document that gets read and worked fromThe developer does not come back asking what was meant here.Systems and business analysis
I draw diagrams in a commonly accepted notation, not with arbitrary boxesMy diagram is understood by a person who was not at the meeting.Systems and business analysis
Middle
Answers for what was built matching what was intended.
I design the data model together with developmentI understand what my entity turns into in the database and why that matters.Systems and business analysis
I describe integrations and contracts between systemsMy contract covers the behaviour on errors, not only the happy path.Systems and business analysis
I state non-functional requirements in numbersInstead of it should be fast I have written down at what load and with what response time.Systems and business analysis
I write acceptance criteria you can check the result againstA test can be written from my criteria without asking me anything.Systems and business analysis
Senior and beyond
The subject of the work is not a document but agreement between parties who do not understand each other.
I work with the domain, not only with the wordingI can challenge a customer's requirement because I understand their business better than they described it.Domain-Driven Design
I do the analysis inside the iterations, not as one big document up frontRequirements get refined along the way, and that is not counted as a failure of planning.Systems and business analysis
I bring the conflicting requirements of different parties to a decisionI can move an argument out of who outranks whom into what each option costs us.Logic and fallacies
I understand the architectural consequences of my own requirementsI know which requirement has just made the system distributed.Architecture patterns
Product manager
Decides what to build and why, and answers for the outcome rather than for the volume shipped.
What people call it: Product manager and product owner mean the same thing in some companies and something fundamentally different in others. In a startup the product manager is often the analyst and the marketer too.
Where people go from here
←
Systems and business analyst
back — the portal does not count this as a failureGoing back into analysis is a normal move, especially if you would rather not answer for the commercial result.
→
Team lead, tech lead, engineering manager
sideways — a different profession, not a promotionAdjacent work with people, but the subject is different: not the team but the value for the user.
→
Data and machine learning
sideways — a different profession, not a promotionThrough product analytics. You will have to stop ordering numbers and start counting them yourself.
Reference skills: 3 levels, 12 items
Entry
People usually arrive here from development, analysis or support, not from scratch.
I talk to users without feeding them the answersWhat I take out of an interview is a description of the problem, not a confirmation of my idea.Product Management
I choose a metric that cannot be gamed without making the product betterI can explain how my metric is connected to money and where it can be cheated.Product Management
I prioritise in a way that lets me explain the decision to the teamA refusal has a reason behind it, not a line about what was decided upstairs.Product Management
I state a problem so that it can be builtThe team does not come back asking what to do if the service is unavailable.Systems and business analysis
Core level
Owns the direction, not the list of tasks in a sprint.
I test hypotheses with an experiment, not with a meetingThe hypothesis says in advance which result would refute it.Product Management
I hold a strategy and can say no to a good ideaThe roadmap has a logic to it, not only a list of wishes from stakeholders.Product Management
I count the unit economics of my productI know what acquisition costs and what a user brings in, not only the DAU.Business for engineers
I work with the development team without turning into a dispatcher of tasksThe team knows why it is building a feature and can propose a cheaper solution to the same problem.Project Management
Senior and beyond
The subject of the work is a portfolio of bets, part of which is required not to pay off.
I manage bets, not tasksI have directions I shut down, and I can explain what they taught us.Product Management
I tell data apart from the interpretation of itI do not confuse correlation with cause, and I spot a survivor sample in somebody else's report.Logic and fallacies
I understand the technical price of my decisionsI can discuss technical debt as a product decision, not as a whim of the developers.How software gets made, and careers
Who owns scale
A different profession, not the next rung: the subject of the work changes from code to people and systems.
Team lead, tech lead, engineering manager
Work about people and the flow of tasks. Not a developer's next level but a different profession.
What people call it: The word 'team lead' covers three different sets of responsibility: a tech lead owns the technical direction, a team lead owns the flow of work, an engineering manager owns people and their growth. Ask which of them is meant in this particular place.
Where people go from here
←
Backend developer
back — the portal does not count this as a failureRoughly one in three goes back into engineering, and that is good news. After a year in management a person is worth more than before.
→
Product manager
sideways — a different profession, not a promotionAdjacent work. The subject of responsibility changes: not the team but the outcome for the user.
→
Architect
sideways — a different profession, not a promotionBack into the technical branch, but keeping the scale: several systems instead of one team.
Reference skills: 3 levels, 13 items
Tech lead
The subject is the team's technical direction. Still writes code, but less of it.
I set the technical direction and explain it to the teamThe decisions are written down, and people can argue about them without me.Architecture patterns
I hold the quality bar without becoming the bottleneckA review does not wait a day for me, and the standard lives in the linter and in CI.Development principles
I manage technical debt as a plan, not as a complaintThe debt has a list, an assessment of its consequences and a slot in the schedule.How software gets made, and careers
I grow people through work, not through adviceI hand over a stretch task and stay nearby instead of taking it back on the second day.How software gets made, and careers
Team lead and engineering manager
The subject is people and the flow of work. There is no work of your own any more, there is other people's.
I hold regular one-on-one meetings where people tell the truthPeople bring their problems in before they hand in their notice.How software gets made, and careers
I delegate the authority along with the work, not only the responsibilityThe task leaves my hands whole, and I do not redo it at night.Management: core materials
I look at the flow of work, not at how busy people areI measure how long a task takes to get through, not the number of tickets closed.Project Management
I hire and run interviews I am not ashamed ofMy interviews check the work, not general knowledge, and the candidate gets an answer on time.How software gets made, and careers
Head of and above
The subject is several teams and the rules they work by.
I design the boundaries between teams, not only their compositionI understand which dependencies between teams the chosen split has created.How software gets made, and careers
I fit the process to the context instead of rolling out a framework wholeI can explain which specific problem each element of the process solves.Project Management
I talk to the business in the language of money and deadlinesMy budget and my promises meet reality more often than they miss it.Business for engineers
I keep the load on the team at a level that can be held for yearsWe have no heroics as the norm and no overtime as a planned resource.Time management for engineers
Architect
Owns the decisions where the price of a mistake is years, not a sprint.
What people call it: The most confusing word in the industry: software architect, solution architect and enterprise architect are three different jobs. At the interview always ask which one is meant.
Where people go from here
←
Backend developer
back — the portal does not count this as a failureGoing back into development is normal: an architect two years away from code starts designing blind.
→
Team lead, tech lead, engineering manager
sideways — a different profession, not a promotionA different profession at the same scale: there the subject is people, here it is systems.
→
SRE and platform engineering
sideways — a different profession, not a promotionAdjacent work: non-functional requirements and fault tolerance are the shared subject.
Reference skills: 3 levels, 12 items
Software architect
The architecture of a single system. The closest to code of the three.
I choose an architectural style to fit the problem and know its priceI can explain why a modular monolith belongs here rather than microservices.Architecture patterns
I record decisions so that they can be revisitedEvery major choice has an ADR with the context and the conditions for revisiting it.Architecture patterns
I draw the boundaries along the domain, not along the layers of codeMy modules line up with the way the business thinks about its own work.Domain-Driven Design
I understand what being distributed does to dataI know where we have eventual consistency and what the user sees at that moment.Distributed systems
Solution architect
Several systems and the integrations between them, often with outside contractors.
I design integrations between systems that have different ownersThe contract survives the other side changing its system without warning.Architecture patterns
I turn reliable and fast into concrete numbers and then check themThe solution has a load calculation, not only a diagram on a slide.Systems performance
I build security into the architecture instead of hanging it on afterwardsThe threat model is discussed before implementation and affects which solution is chosen.Application security
I plan a migration that can be stopped halfwayThe transition has intermediate states, and the system works in every one of them.Databases
Enterprise architect
The landscape of the whole company. There is almost no code here, but there is politics and money.
I see the landscape of the company's systems and know what is connected to whatI can say which systems will fall over if this one is switched off.How software gets made, and careers
I introduce rules that teams follow without a supervisorThe standard is more convenient than breaking it, so nobody works around it.How software gets made, and careers
I justify architectural decisions with money and riskI talk to the finance director in their own language instead of showing diagrams.Business for engineers
I account for the requirements of regulators before designing, not after an auditI know where our personal data is and what the law allows us to do with it.Application security
Self-assessment: mark yourself up and see the gaps
The three states per item — “I do this”, “I do this with support”, “I do not” — come from “How to grow: a development plan and feedback”.
The result of the self-assessment is a map of gaps, not a level. The portal will not call you a junior, a middle or a senior: it has no data for that, and the words have no shared meaning across companies.
The marks are kept in this browser only (localStorage, keys digitable:career:*). No sign-up, nothing is sent anywhere, and the reset button deletes them all.
The self-assessment needs JavaScript: it computes the map of gaps in the browser and keeps the marks locally. Without it the page is still useful — the whole lattice of roles and the full list of skills with links to the tracks are above.
The list of skills is this portal's guide, not an industry standard and not your employer's matrix. External matrices worth comparing against are listed in the piece on seniority; read them two adjacent levels at a time — the value is in the delta between them.
Esc
Locally, in your browserHow the search works
Tracks. The search groups publications by learning track and compares your query against titles, descriptions, tags, headings and article fragments.
Articles. This mode ranks individual articles and videos, for when you already know the topic or the title.
Your query is not sent to a server or to any external ML system. This is a statistical model, not generative AI: it recommends what already exists and invents nothing.