Grammar guide + free exercises
English Verb Tenses for Developers
April 21, 2026 · Updated October 10, 2026
Understanding verb tenses is the difference between sounding fluent and sounding hesitant. These are the nine essential English tenses with real examples from standups, code reviews, and retrospectives, plus 75 exercises to practice them.
Present Simple
When to use it
Use it for habits, routines, permanent states, and facts. In a dev context: describing what tools or systems do, daily processes, and technical facts.
How to form it
Use the base form for I/you/we/they. Add -s or -es for he/she/it. Negative: don't/doesn't + base verb. Question: Do/Does + subject + base verb?
Conjugation
| Subject | work |
|---|---|
| I | work |
| You | work |
| He / She / It | works |
| We | work |
| They | work |
Signal words
Common mistakes
Developer examples
- “She reviews pull requests every day.”
- “The API returns a 200 status on success.”
- “We deploy to production on Fridays.”
Practice
Every morning, the team a standup meeting.
She code reviews before merging any PR.
The API a JSON object on success.
Present Continuous
When to use it
Use it for actions happening right now or temporarily. In a dev context: what you're currently working on, what's running at this moment, or a project in progress this sprint.
How to form it
Use am/is/are + the -ing form of the verb. Negative: am/is/are + not + verb-ing. Note: some verbs are not used in continuous form (know, understand, want, need).
Conjugation
| Subject | work |
|---|---|
| I | am working |
| You | are working |
| He / She / It | is working |
| We | are working |
| They | are working |
Signal words
Common mistakes
Developer examples
- “I'm refactoring the authentication module this week.”
- “The CI pipeline is running the tests right now.”
- “We're migrating to a new database — it should be done by Friday.”
Practice
We the authentication module this week.
I (debug) a tricky race condition at the moment.
I on the bug you reported — I should have a fix soon.
The CI pipeline the tests right now.
Present Perfect
When to use it
Use it to connect the past to the present: recent actions, experience, or something that happened but the exact time doesn't matter. In a dev context: things you've done today, your experience with a technology, or the current state of a task.
How to form it
Use have/has + the past participle. Negative: haven't/hasn't + past participle. Use 'have' for I/you/we/they and 'has' for he/she/it.
Conjugation
| Subject | deploy |
|---|---|
| I | have deployed |
| You | have deployed |
| He / She / It | has deployed |
| We | have deployed |
| They | have deployed |
Signal words
Common mistakes
Developer examples
- “I've added the ticket to the backlog.”
- “We've merged three PRs today.”
- “She has never used this framework before.”
Practice
I the ticket to the backlog.
We three PRs today and there are two more to review.
She this framework before, so onboarding will be quick.
Past Simple
When to use it
Use it for completed actions at a specific point in the past. In a dev context: standup updates about yesterday, what happened in the last sprint, or what caused a bug.
How to form it
Add -ed to regular verbs. Many common verbs are irregular: sent, merged, built, wrote, ran, broke, found. Negative: didn't + base verb. Question: Did + subject + base verb?
Conjugation
| Subject | fix |
|---|---|
| I | fixed |
| You | fixed |
| He / She / It | fixed |
| We | fixed |
| They | fixed |
Signal words
Common mistakes
Developer examples
- “She opened a pull request two hours ago.”
- “The team shipped the feature last sprint.”
- “We fixed the outage before any users noticed.”
Practice
The team the feature last sprint.
We (deploy) the hotfix yesterday morning.
She a pull request two hours ago.
We the outage before any users noticed.
Past Continuous
When to use it
Use it for actions that were in progress at a specific moment in the past, or two actions happening simultaneously. In a dev context: describing what you were working on when an incident happened, or what was running during an outage.
How to form it
Use was/were + the -ing form. Use 'when' + Past Simple for the interrupting event ('I was reviewing a PR when the server crashed'). Use 'while' for two simultaneous ongoing actions.
Conjugation
| Subject | debug |
|---|---|
| I | was debugging |
| You | were debugging |
| He / She / It | was debugging |
| We | were debugging |
| They | were debugging |
Signal words
Common mistakes
Developer examples
- “I was reviewing a PR when the server went down.”
- “The team was deploying the new release when the alert triggered.”
- “She was debugging the issue while the client was waiting on the call.”
Practice
I the authentication module when the production alert fired.
The server correctly when we noticed the memory leak.
While she the code review, the CI pipeline failed.
Past Perfect
When to use it
Use it for an action that was completed before another past action. In a dev context: explaining the sequence of events in a post-mortem, or clarifying what had already happened before a problem occurred.
How to form it
Use had + the past participle for all subjects. It always appears alongside a Past Simple event to show which action came first. Negative: hadn't + past participle.
Conjugation
| Subject | merge |
|---|---|
| I | had merged |
| You | had merged |
| He / She / It | had merged |
| We | had merged |
| They | had merged |
Signal words
Common mistakes
Developer examples
- “She had already merged the PR before the review was finished.”
- “The server had crashed twice before we identified the root cause.”
- “I had pushed the fix to staging before the standup started.”
Practice
She the PR before the code review was even scheduled.
The team (write) the postmortem before the meeting began.
The server twice before we identified the root cause.
I the fix to staging before the standup started.
Future Simple (will)
When to use it
Use it for spontaneous decisions, offers, predictions, and promises. In a dev context: committing to help someone on the spot, making predictions about how code will behave, or promising a deliverable.
How to form it
Use will + base verb for all subjects. Negative: won't + base verb. Use 'will' for spontaneous decisions and offers. For pre-planned events, use Present Continuous or 'going to' instead.
Conjugation
| Subject | deploy |
|---|---|
| I | will deploy |
| You | will deploy |
| He / She / It | will deploy |
| We | will deploy |
| They | will deploy |
Signal words
Common mistakes
Developer examples
- “Don't worry, I'll fix that bug for you.”
- “I think this approach will cause performance issues later.”
- “If you share your screen, I'll help you debug it.”
Practice
Don't worry, I fix that bug for you.
I think this approach cause performance issues later.
If you share your screen, I help you debug it.
Future Continuous
When to use it
Use it for an action that will be in progress at a specific point in the future. In a dev context: describing what will be happening during a meeting, a deployment window, or a future sprint.
How to form it
Use will be + verb-ing. It emphasises that the action will be in progress — not just that it will happen — at a specific future moment.
Conjugation
| Subject | present |
|---|---|
| I | will be presenting |
| You | will be presenting |
| He / She / It | will be presenting |
| We | will be presenting |
| They | will be presenting |
Signal words
Common mistakes
Developer examples
- “This time next week, we will be deploying the new release.”
- “At the standup tomorrow, I will be presenting the new architecture.”
- “By 3pm, the pipeline will be running the full regression suite.”
Practice
This time next week, we the new release.
At 2pm tomorrow, the team (migrate) users to the new plan.
At the standup tomorrow, I the new architecture.
By 3pm, the pipeline the full regression suite.
Future Perfect
When to use it
Use it for an action that will be completed before a specific point in the future. In a dev context: committing to deadlines, sprint goals, or milestone deliverables.
How to form it
Use will have + the past participle. It always works with a future deadline or reference point. 'By' + a deadline is the most common trigger.
Conjugation
| Subject | ship |
|---|---|
| I | will have shipped |
| You | will have shipped |
| He / She / It | will have shipped |
| We | will have shipped |
| They | will have shipped |
Signal words
Common mistakes
Developer examples
- “By Friday, we will have shipped all the features in the milestone.”
- “By the time you review this PR, I will have addressed all the comments.”
- “We will have migrated to the new database before the quarter ends.”
Practice
By Friday, we all the features in the milestone.
By the time you review this PR, I all the comments.
We to the new database before the quarter ends.
Present Continuous vs. Present Simple
This is the mix-up developers make the most: Present Simple is for the pattern, Present Continuous is for right now. Here's how to tell them apart, then put it to the test.
Present Simple
Habits, routines, and permanent facts. Signal words: always, usually, every day, every sprint.
“The team reviews every PR before merging.”
Present Continuous
Actions in progress right now, or temporary situations. Signal words: right now, currently, this week, still.
“The team is reviewing your PR right now.”
Practice: Present Simple vs. Present Continuous
6 exercises that mix both tenses: decide whether it's a habit or something happening right now.
Right now, the deployment pipeline the new build.
Our CI pipeline always unit tests before deployment.
Look! The server errors right now — let's check the logs.
She usually her PRs by noon.
I can't talk now — I a production incident.
Our team in two-week sprints.
Present Perfect vs. Past Simple
This is the error flagged earlier on this page as the most common one for Spanish speakers: Present Perfect connects the past to now, but the moment you mention a specific time, you must switch to Past Simple. Here's how to tell them apart, then put it to the test.
Present Perfect
Connects the past to the present: recent actions, experience, or something that happened but the exact time doesn't matter. Signal words: already, yet, just, ever, never, so far, since, for.
“I have already merged the PR.”
Past Simple
A completed action at a specific point in the past. Signal words: yesterday, last week, ago, at 3pm, in 2023.
“I merged the PR an hour ago.”
Practice: Present Perfect vs. Past Simple
6 exercises that mix both tenses: watch for a specific time mentioned in the sentence, since that's the signal to switch to Past Simple.
I this kind of bug before, so I know the fix.
She the PR yesterday afternoon.
We three incidents so far this month.
The team the migration last Friday.
I this error before. Any ideas?
The outage at 3pm yesterday.
Past Simple vs. Past Continuous
The classic incident-report pair: Past Continuous sets the scene (what was going on), Past Simple is the event that interrupted it. Mixing them up makes a post-mortem confusing to read. Here's how to tell them apart, then put it to the test.
Past Simple
A completed action at a specific point in the past, often the event that interrupted something else. Signal words: yesterday, last week, ago, when.
“The server crashed when I was deploying.”
Past Continuous
An action in progress at a specific past moment, the background against which something else happened. Signal words: while, when, at that moment.
“I was deploying when the server crashed.”
Practice: Past Simple vs. Past Continuous
6 exercises that mix both tenses: decide which action was the ongoing background and which one was the one-time interruption.
I the logs when the alert fired.
The outage right after the deploy finished.
While I the tests, the CI pipeline crashed.
The team the release when the outage happened.
I the PR when my laptop died.
She at 3pm sharp.
Present Perfect vs. Past Perfect
Both 'perfect' tenses look backward, but from different points: Present Perfect looks back from now, Past Perfect looks back from another point in the past. Add a second past event to the sentence and that's the signal to switch. Here's how to tell them apart, then put it to the test.
Present Perfect
Connects the past to right now, with no second past event involved. Signal words: already, yet, just, since, for, ever, never, so far.
“I have already merged the PR.”
Past Perfect
An action completed before another point in the past. Always paired with a Past Simple event. Signal words: by the time, before, after, already (in a past context).
“I had already merged the PR before the review started.”
Practice: Present Perfect vs. Past Perfect
6 exercises that mix both tenses: check whether the sentence has a second past event to reference, since that's what calls for Past Perfect.
I the PR before the review even started.
We three PRs today.
By the time the postmortem started, I the full timeline.
She never used this framework before (and still hasn't).
The pipeline twice this morning before the fix landed.
I three tickets to the backlog this morning.
Will vs. Going To
Both talk about the future, but for different reasons: 'will' is for the decision you make on the spot, 'going to' is for the plan that's already made or the outcome you can already see coming. Here's how to tell them apart, then put it to the test.
Will
Spontaneous decisions, offers, and predictions based on opinion, not evidence. Formula: will + base verb.
“I'll fix that bug for you.”
Going To
Pre-planned intentions, or predictions based on evidence you can already see. Formula: am/is/are + going to + base verb.
“We're going to deploy this Friday: it's already on the calendar.”
Practice: Will vs. Going To
6 exercises that mix both forms: decide if it's a decision made in the moment or a plan already in place.
Look at those error logs: the server crash soon.
The tests just failed. I check what's wrong.
We migrate to the new database next sprint: it's already on the roadmap.
I have this fixed by end of day. You have my word.
The deploy script is failing again. Ok, I take a look right now.
We already scheduled it: the team demo the new search feature on Friday.
Final Review: All 9 Tenses
One last mixed set to prove you've got it. No hints about which tense each sentence needs.
Our monitoring system an alert every time the error rate spikes.
I with the new caching layer right now, so don't deploy yet.
We this bug before — check the archived tickets.
The outage about two hours, starting right after the deploy.
I the logs when I noticed the spike in latency.
By the time support called, the team the root cause.
I'm not sure yet, but I think we need another server.
At this time tomorrow, we the migration.
By next release, we all the legacy endpoints.
Key Takeaways
- Use past simple in standups for completed work: 'I fixed the bug yesterday.'
- Use present continuous for ongoing work: 'I am refactoring the auth module.'
- Use present perfect when the exact time does not matter: 'I have opened a PR for review.'
- Use past continuous for incidents: 'I was reviewing a PR when the server went down.'
- Use future perfect for sprint commitments: 'By Friday, we will have shipped all the features.'
Ready to practice your English at work?
Lingua-e has interactive exercises built around real developer conversations: standups, code reviews, retrospectives, and more. Practice until it comes naturally.
Try Lingua-e for free
Written by
Roxana LafuenteLingua-e's founder
Roxana Lafuente is a software engineer with 8+ years of experience. At the beginning of her career, even though she had already passed the First Certificate in English, she still froze every time she had to speak up in the daily standup. That was a gap nobody was fixing. After 2,000+ standups, she figured out what actually builds fluency: practice that looks like your real work. She built Lingua-e so other developers wouldn't have to take the long road to feel confident working in an international development environment.