Most computer science graduate CVs read like a module list with a name on top. Data Structures, Operating Systems, a line about "strong problem-solving skills", and a degree classification the reader has to hunt for.
The ones that get interviews do the opposite. They lead with what you built, the languages you shipped it in, and the problem it solved, so a hiring manager sees a working engineer before they see a fresh graduate.

Key takeaways
- No paid experience is normal for a first computer science role. Lead with projects, coursework, and the languages you actually write in.
- Treat your final-year project, coursework, and side builds as experience. Give each one a stack, your role, and a result.
- Put a GitHub or portfolio link in the header, and make sure the repositories behind it are tidy before a reviewer clicks.
- Open with a short personal statement built on what you have built, not a list of adjectives.
- One page is right for a graduate. Send a PDF unless the advert asks for a Word file.
- Name the specific tools and languages the advert lists, and only the ones you can defend in an interview.
Writing a computer science CV with no experience
Computer science is one of the few fields where you can prove you can do the job without ever having been paid for it. The code you have written is the evidence.
"No experience" rarely means no evidence for a CS graduate. It means you have not yet had a job title with the word engineer in it. You have almost certainly written, tested, and shipped code, and that is what a hiring manager wants to see.
So your first CV carries its weight differently. Use a skills-led structure: personal statement, then skills, then a projects section, then education, with any part-time or placement work lower down. If you want the fundamentals first, see how to write a CV.
Mine your degree and your own time for real engineering evidence. It is almost always there:
- Your final-year project or dissertation: the problem, the stack, and what you shipped.
- Group coursework where you owned a component, such as the API, the database schema, or the test suite.
- A side project you actually deployed, even a small one, with a link a reviewer can click.
- Open-source contributions, a merged pull request, a Kaggle notebook, or a hackathon build.
- A university society tech role, freelance work, or tutoring where you wrote code for someone else.
Write those the way you would write a job. "Built a full-stack expense tracker in React and Node, deployed on AWS, used by 40 students on my course" is an experience bullet that happened in your bedroom.
If your degree included an industrial placement or a sandwich year, treat it as your headline experience and give it the space a graduate role would get. If it did not, a summer internship, a coding society, or a serious personal project fills the gap.
If it lives on GitHub, link it and tidy the repository first: a clear README, sensible commits, and no secrets in the history. A reviewer will open it, and a messy repository undoes a good bullet point.
One line moves a graduate CV up the pile: "AWS Certified Cloud Practitioner" or "completing the freeCodeCamp Responsive Web Design certification". It signals you keep building after the deadline, which is most of what junior hiring is about.
Skills to put on a computer science CV
Read a batch of graduate computer science adverts and the same requirements repeat, and they are concrete, not generic. A language or two you are fluent in, version control, data structures and algorithms, and some exposure to databases and the command line.
Those are your hard skills, and they should appear in the words the advert uses. If a role asks for Python and you mostly write Java, list Java honestly rather than padding with buzzwords.
Group your hard skills so a reader can scan them: languages, frameworks and libraries, databases, and tools such as Git, Docker, and the command line. A wall of 30 comma-separated keywords reads as noise, and a technical interviewer will test the ones you list.
Evidence beats a list every time. Rather than writing "Python" and hoping, tie the skill to something you built: "Python (final-year project, a Flask API with 90% test coverage)". One line like that is worth ten bare keywords.
The soft skills that matter here are the ones you can show in a project bullet: communication, teamwork on group coursework, and the discipline to keep debugging something you would rather give up on.
List only what you can defend at a whiteboard. If you have touched a technology once, put it under "familiar with" rather than claiming fluency. For more on how to phrase them, see computer skills on a CV.
Top skills for your computer science CV:
Python or Java
JavaScript and a front-end framework
SQL and databases
Git and version control
Data structures and algorithms
HTML and CSS
Linux and the command line
Testing and debugging
Cloud basics (AWS or Azure)
Problem-solving
Communication
Teamwork
Attention to detail
Willingness to learn
Building a projects section that proves you can code
For a graduate, the projects section does the job the experience section does for everyone else. It is where a hiring manager decides whether to book the call.
Order the projects by relevance to the role, not by chronology. If the advert is for a back-end role, lead with the project where you designed the API and the database, even if you built a game more recently.
Give each project a heading, a one-line summary of what it does, the stack, and your specific contribution. Then a result: users, marks, a performance figure, or a link to the live demo.
Three strong projects beat eight throwaway ones. Pick the builds you can talk through line by line, because a technical interviewer will ask.
What makes a project worth listing is not how clever it is. It is whether it solved a real problem, whether it runs, and whether you can explain the trade-offs you made. A todo app that you deployed and can defend beats a half-built neural network you copied from a tutorial.
Link a GitHub profile or a small portfolio site near the top of the CV. Make sure the top repositories are the ones you want read, with READMEs that explain what each project does and how to run it.

How to structure a project entry
Weather Dashboard, React and TypeScript, OpenWeather API. Built a responsive dashboard that caches API responses to stay under the free rate limit. Added end-to-end tests with Playwright and deployed to Vercel. Live demo and code linked. Keep it to a title, the stack, two or three bullets on what you did, and a result or a link.

PRO TIP
A reviewer who clicks your GitHub and finds three empty repositories and a half-finished tutorial learns more than you want them to. Pin the two or three projects you are proud of, write a README for each, and keep the abandoned ones out of view.
Writing your computer science personal statement
Three or four sentences at the top: who you are, the languages and tools you work in, one thing you have built, and the kind of role you want. Keep it concrete. See more personal statement examples if you are stuck on the opening line.
Avoid the adjective soup every other graduate uses. "A passionate, hard-working problem-solver" tells a recruiter nothing they can check, and it is the opening line on half the CVs in the pile.
Name the specific technologies and one concrete build in the first two lines. A reader deciding between 200 graduate CVs gives you a few seconds, and a real detail buys you the rest of the page.
Here is the version that gets skimmed and forgotten:
Personal statement to avoid
A passionate and hardworking computer science graduate with excellent problem-solving skills and a strong work ethic, seeking a challenging role in a dynamic company where I can grow, develop my abilities, and contribute to the team.
And the version that gets read, because every line is checkable:
Computer science personal statement example (no experience)
Final-year computer science student at the University of Manchester, on track for a 2:1, who builds full-stack web apps in React and Node. Deployed a course-planning tool now used by 60 classmates, and contributed three merged pull requests to an open-source scheduling library. Looking for a graduate software engineer role in a team that reviews code and mentors juniors.
When we read a graduate computer science CV with no paid experience, we look for one thing: a project we can open and understand. A line like "built and deployed a REST API in Python that handles 500 requests a minute" tells us more than any list of modules. Name what you built, the stack, and the result, then link the code. A tidy repository with a clear README beats a polished CV with nothing behind it.
Writing your work experience section
Whether it is a placement, an internship, a part-time job, or a freelance gig, write each entry the same way: a dated heading, then bullets that show what you did and the outcome. Lead every bullet with a verb. For the mechanics, see work experience on a CV and these CV action verbs.
Non-technical work still counts. A retail or hospitality job shows reliability and teamwork, and you can frame it around responsibility rather than pretending it was engineering. Working 16 hours a week around a full-time degree is a real signal about how you handle pressure.
Where the work was technical, quantify it. Code is measurable: requests handled, load time cut, tests added, bugs closed. Those are your CV achievements, and an illustrative number beats a vague claim of impact.
You do not need a decimal-perfect figure. "Reduced page load from roughly three seconds to under one" is honest and specific, and it invites the follow-up question you want in an interview.
- Built and shipped three internal API endpoints in Python and FastAPI, covered by unit tests, as part of the payments team
- Cut a nightly reconciliation job from 40 minutes to 9 by rewriting the database queries and adding an index
- Paired with a senior engineer on code reviews and closed 15 backlog bugs across the placement
- Wrote the onboarding README that the next two interns used to set up the project locally
- Balanced 16 hours a week around a full-time degree, meeting attendance and shift commitments through exam periods
- Trained four new starters on the till and stock systems, which the store manager cited in a positive review
- Handled customer complaints calmly at a busy service desk, the kind of composure that carries into on-call and incident work
Tailor each application: pull the languages and tools from the advert and mirror the ones you genuinely have. Enhancv's CV tailoring feature reads the advert and suggests the matching edits, which saves rewriting from scratch for every role.
Education and certifications for a computer science CV
For a graduate, education sits near the top, not the bottom. Lead with your degree, the classification or your predicted grade, and the university.
List the modules that match the job, not all of them. A role heavy on data wants to see your database and machine learning modules, not every first-year unit you passed.
If your classification is not what you hoped, lead with the evidence instead. A 2:2 next to two deployed projects and a merged pull request reads very differently from a 2:2 on its own.
Name your final-year project here as well as in the projects section if it is relevant to the role. The title and a one-line result are enough, since the detail lives higher up.
Certifications carry weight when experience is thin. An AWS, Azure, or Google Cloud associate certificate, or a well-known online course you actually finished, shows initiative. Put them in the education section or a short dedicated block, and treat them like any other qualification on your CV.
Formatting your computer science CV
For a first computer science CV, one page is usually right. You do not have enough paid experience to justify two, and a tight single page reads as focused.
Use one column, standard headings, and a readable font. Recruiters and engineers both skim, so make the structure obvious and put the strongest section first.
Order matters more than decoration. For a graduate that usually means personal statement, skills, projects, education, then work experience, so the code-heavy proof sits above the part-time job.
Resist the urge to over-design it. Coloured sidebars and heavy graphics rarely survive a parser cleanly, and a simple layout is safer than a template that looks impressive but drops half your text into an ATS void.
Put your GitHub, portfolio, and LinkedIn links in the CV header, as plain text or clean hyperlinks, so a reviewer can reach the code in one click.
Send a PDF for direct applications so the layout holds, and keep a Word copy for agencies that reformat CVs into their own template. If the advert names a file type, follow it.
Graduate applications almost always pass through tracking software first, so keep the layout clean and the headings standard for an ATS-friendly CV. Build it from a tested layout rather than a blank page: Enhancv's CV templates export to a clean PDF.
Is your resume good enough?
Drop your CV here or choose a file. PDF & DOCX only. Max 2MB file size.
Conclusion
Lead with what you have built, name the languages and tools you actually use, and link code a reviewer can open.
Pair the CV with a short cover letter that says why this team and why software, and you turn a thin work history into a credible first application.

Author's take - the Enhancv team
When we read a graduate computer science CV with no paid experience, we look for one thing: a project we can open and understand. A line like "built and deployed a REST API in Python that handles 500 requests a minute" tells us more than any list of modules. Name what you built, the stack, and the result, then link the code. A tidy repository with a clear README beats a polished CV with nothing behind it.




















