You control your data
Choose type of cookies to accept
These cookies give you access to a customized experience of our products. Personalization cookies are also used to deliver content, including ads, relevant to your interests on our Site and third-party sites based on how you interact with our advertisements or content as well as track the content you access (including video viewing). We may also collect password information from you when you log in, as well as computer and/or connection information. During some visits, we may use software tools to measure and collect session information, including page response times, download errors, time spent on certain pages and page interaction information.
These cookies are placed by third-party companies to deliver targeted content based on relevant topics that are of interest to you. And allow you to better interact with social media platforms such as Facebook.
These cookies are essential for the Site's performance and for you to be able to use its features. For example, essential cookies include: cookies dropped to provide the service, maintain your account, provide builder access, payment pages, create IDs for your documents and store your consents.
To see a detailed list of cookies, click here .
- Resume Help
9 Great Programming Projects for a Resume (Examples)
Our customers have been hired by:
You’ve got your eyes on a sweet IT job with your name written all over it. You know you can do it. Problem is, you don’t have much that can prove that. How can you scramble together some kind of portfolio to show recruiters you’re worth your salt?
Easy. We’ve compiled a list of 9 programming projects for your resume that’ll help you stand out like bug-free code. What’s better, we have options for beginner and more advanced programmers, so whatever your level, we have something you can upgrade your resume with.
Want to save time and have your resume ready in 5 minutes? Try our resume builder. It’s fast and easy to use. Plus, you’ll get ready-made content to add with one click. See 20+ resume templates and create your resume here .
Sample resume made with our builder— See more resume examples here .
Check out our other articles centered around IT:
- Full Stack Developer Resume
- Java Developer Resume
- UX Designer Resume
- UI Developer Resume
- System Administrator Resume
- Information Technology (IT) Resume
- Computer Technician Resume
- IT Specialist Resume
- IT Technician Resume
- Software Developer Resume
- Computer Science Resume
- Web Developer Resume
- Desktop Support Resume
- Data Analyst Resume
- Cyber Security Resume
- Technical Support Resume
- Android Developer Resume
- Programmer Resume
- Technical Resume
- Computer Engineering Resume
- Resume Examples for Any Job
A List of Programming Projects for Your Resume
Listing programming projects on your resume isn’t just about showing off what a great programmer you are. If you’re an awesome programmer, great, but if you can also create something that’s actually useful, then you’ve hit another level of amazingness that recruiters will take note of. This goes double if you can create something that resonates with the company you’re applying to.
Some of you are experienced programmers and some are just starting out so find a harder or easier version of the programming projects that fit your experience and skill set.
Here are 9 programming projects for your resume that will make you stand out like Bill Gates in a computer science 101 class:
Creating gaming AI takes things up a few pegs in terms of complexity. You’re inherently trying to take complex behavior and turn it into ones and zeros.
If you feel up to it, go all out with creating sports based games or decision based play using game engine software.
Remember though, your programming project doesn’t need to be the next best thing since Assassin’s Creed. It’s enough to take a simple game like Snake and include a couple of additions to make it a bit snazzier.
Programming skills you can prove : data structures, algorithms, game engines (e.g. Unity)
Read more: Technical Skills for a Resume
Voice and Face Recognition Software or Apps
Voice and face recognition is the way of the future so getting in on it now not only proves your technical skills , but also that you’re a forward thinker.
Creating software to recognize your face and face to open a door or as a password enabling mechanism, for example, are a couple of great ways of demonstrating Python projects on your resume (Python is the third top tech skill employers want now just after Java and SQL ).
Programming skills you can prove : algorithms, Python, data analysis, software development
Read more: Hard Skills for a Resume
This isn’t about just creating a program that just scrapes the web— that has no end goal and is relatively useless unless you're scraping for some kind of gigantic database.
So you can do one of two things: you can build a website that uses the scraped information for some purpose or you can automate the scraping program to do something with that information on its own (for example, scraping the news and posting the top 3 articles on your social media feed).
Programming skills you can prove : automation, web development, web scraping, database management
Read more: The Best Computer Skills for a Resume
An Ad Board
This could actually be any kind of board where you utilize several different users and user inputs. Creating a board like an ad board or job board requires programming and UI that acknowledges the difficulty of matching different users with their needs.
This idea would also work for a site or app that is centered around barter trade.
Programming skills that you can prove : database management, web development, UI
Read more: Job Skills Employers Want to See
Whoever said that programming needs to just be serious apps? Take advantage of mixing pleasure with work and showcase game mods that you made to your favorite game.
Creating game modifications can prove both hard skills and soft skills since it uses both your creative thinking skills as well as programming skills.
And to answer your question—yes, non-game companies will be interested in this.
Read more: Employability Skills for a Resume
Making a mobile app is one of the staple go-tos in the IT world. With today’s tools and easy access to instructional videos, it’s quite simple to make one or more apps.
There is one caveat here though— there is a huge mass of mobile apps out on the market so unless your app is mind-blowingly amazing, you’ll be as visible as a drop of water in the ocean.
Another pomodoro timer or list app isn’t going to cut it if you want to get your dream IT job. So you can go one of two routes— make the app more complex, or go with a simpler app, but a rare idea.
For example, a simple to-do list isn’t anything to write home about. But sync that to-do list with Evernote, Google sheets or calendar, or OneNote and you have something much more interesting, useful, and complex.
Another idea is to take an app you already know and make it even better through upgrading its features, adding features, expanding or simplifying the UI, etc.
Programming skills you can prove : mobile app programming and development, UI, UX, API
Read more: Transferable Skills for a Resume
Everyone wants to be able to see into the future and you can help with that. Build a program that can extract meaningful relationships from large data sets. If that program can also make forecasts or predictions on the basis of those data sets, then you have an instant winner.
Remember to tailor your resume to the job you want. If you’re applying for an IT job in the business world, create a financial forecast that will predict profits or losses. If you’re applying for a job in marketing, try to forecast user/follower retention and growth.
Programming skills you can prove : data analysis and management, software development, forecasting, analytical skills
Read more: How to Write a Targeted Resume
A Website or Blog
Building a website or blog is one of the simplest programming projects you can work on. That doesn’t mean that it has to be something uber primitive.
Let you mind go wild with what your website can offer or do to prove your programming skills. Websites are also a great addition to other programming projects such as web scraping or ad boards so they don’t always have to be only stand alone projects.
Read more: Extracurricular Activities in Your Resume
Business Process Management System
Everyone is interested in a system or program that can make their life easier. Business processes are a great source of tasks and operations that can usually be computerized through proper software.
Business processes can be very lengthy and complicated so start off with a smaller chunk. For example, HR dashboards can be very complicated, but you can tackle creating software for just timesheet management or calculating overtime.
Programming skills you can prove : general programming, UI, database and process management, web development, project management
When making a resume in our builder, drag & drop bullet points, skills, and auto-fill the boring stuff. Spell check? Check . Start building a professional resume template here for free .
When you’re done, our free resume builder will score your resume and our resume checker will tell you exactly how to make it better.
How to Add Programming Projects to Your Resume
There are two different resume sections where you can add programming projects to your resume: your work experience section or the additional section in your resume.
Add programming projects to your work experience if you’re writing a resume for an internship or writing a resume with no experience . This will put your projects at the forefront and grab the recruiter’s attention.
If you already have some work experience, use the additional section of your resume for your programming projects.
In either case, list the name of the project, how long it lasted, what tools or technologies you used, and add a few bullet points about what you did and what you learned. Be specific and relevant to the job you’re applying for.
Remember to also include any key achievements or awards that you’re programming projects might have got you.
Read more: How to List Projects on a Resume
One thing— this isn’t a be all, end all list. If you’ve worked on something different, that’s great as long as it can prove certain skills to the hiring manager.
Think about your own life or those around you and think how it could be improved or made easier. Then try to come up with apps or software that can solve that problem. Just remember: tech technologies are in a constant state of flux . So there’s no use listing Flash projects on a resume.
Plus, a great cover letter that matches your resume will give you an advantage over other candidates. You can write it in our cover letter builder here. Here's what it may look like:
See more cover letter templates and start writing.
Thanks for reading! Do you have any questions about adding programming projects to your resume? Let us know down in the comments below!
About Zety’s Editorial Process
This article has been reviewed by our editorial team to make sure it follows Zety's editorial guidelines . We’re committed to sharing our expertise and giving you trustworthy career advice tailored to your needs. High-quality content is what brings over 40 million readers to our site every year. But we don't stop there. Our team conducts original research to understand the job market better, and we pride ourselves on being quoted by top universities and prime media outlets from around the world.
Don't miss out on exclusive stories that will supercharge your career!
Get a weekly dose of inspiration delivered to your inbox
20+ Student Resume Examples & Templates for All Students
How to get noticed being a student with no working experience? Here's a complete guide plus CV examples for students to use freely. Read more and land your next job.
Best Resume Templates in 2023 (10+ Picks to Use Now)
The best resume templates aren't just about fancy looks. They have to be sleek and professional. Their layout needs to show off your value. Here's what'll help.
Should You Make a Two Column Resume? Guide + Templates
Two-column resumes can work great in getting you the job you’re after. But you still need to choose from many two-column resume templates. Here you’ll see only the best of them!
15+ Programming Projects for Resume to Show Your Coding Skills
Are you trying to get your first programming job to set foot in the fast-growing IT sector? Or perhaps you’re a seasoned programmer hustling to get a placement in your dream fortune 500 company?
Write your resume in 15 minutes
Our free collection of expertly designed cover letter templates will help you stand out from the crowd and get one step closer to your dream job.
If you have been trying for some time, you might have already realized there’s a missing part on your resume: programming projects.
In this guide, you’ll learn everything you should know about selecting and listing programming projects for your resume .
- 15+ programming project examples: code, no-code, and low-code.
- How to list them on your resume: the right way.
- How to get hired even when there’re no active vacancies in the company.
- Tips to land your dream job faster with your programming projects.
A programming resume needs a modern resume template that blows away the hiring manager with its simplicity of design. We have listed many resume templates that suit programmers’ profiles which you can try for FREE.
Why Do You Need to List Coding Projects On Your Resume?
Your work experience on the resume would speak about your skills and achievements. The problem is that everyone has worked somewhere in IT and the technical skills they have mastered are almost the same.
Then there’s you with a portfolio of outstanding personal projects that are highly relevant to the position you’re applying for.
I would love to be that hiring manager to make an on-the-spot hiring decision.
There’re reasons to list projects on your resume for both entry-level and experienced programmers. Here are a few of them 👇.
When you are new
When you’re applying for your first programming job or internship, you can’t keep your experience section empty. A great way to fill up your resume is with your personal programming projects.
The best time to start is while you are still studying. Start early.
In a Career Transition
If you’re an experienced network engineer or a web developer and trying to change your career into a software development job, your previous experience though they are technical would not impress a hiring manager.
Taking some quality time to develop a few programming projects that showcase your skills would be ideal rather than explaining your coding skills in an interview.
It’s also a great way for you to assess the technical requirements and skills for the new job.
Shows your passion
Even if you are an experienced candidate, having worked on a couple of personal projects would come in handy – it shows your passion for the task as opposed to most people coding just for the paycheck and not having a real interest in their work.
A personal programming project gives you more exposure to technical and non-technical aspects of development.
At work, you only get to handle a part of a project and you won’t have time to think about the rest. You’ll be working with a team of developers, designers, copywriters, and even with marketing teams.
Now, in your personal project, you’ll take charge of everything – and that will give you a sound understanding of how each function interrelates to develop a final product.
15+ Coding Projects You Could List on Your Resume
This list consists of projects that you can complete by yourself. However, the area of specialization, skill requirement, and time consumption would be different for each project. Choose what is relevant to you before you start.
We have listed 15 categories of best programming projects to list in your resume where you will find many project ideas under each of them.
1. A website
Creating a website would be a great project if you’re interested in web development.
The simplest project you could start with is a blog or a personal portfolio.
You could use any content management system (CMS) to build your website – you could use Squarespace, Wix, or WordPress. The most cost-effective option is WordPress as it’s completely free. You’ll only have to spend on the domain, hosting, and any third-party plugins if necessary.
If you create a personal portfolio, you could easily demonstrate the other programming projects on the website so that it will be easier to send it to the recruiters. Make sure the website you create is mobile responsive.
If you’re particularly looking for a career in web development, creating a basic e-commerce website would add a lot of value.
Also, consider creating a listing website for real estate, used car selling website, or garage sales, which could even turn out to be a side hustle if you could bring in some traffic.
Games are a great way to showcase your understanding of basic logic and algorithms.
Based on your interest and requirement, the type of games you should be creating would be different.
Though creating more sophisticated games with 3D characters and storylines takes more time and resources, if you’re interested, you could create one with a game engine software like Unity, CryEngine, Godot, or Unreal Engine may be as a group project.
3. A mobile application
If you’re interested in developing mobile applications for Android and iOS, having a couple of projects on your portfolio would be important.
You could showcase your technical skill in Java with Android app creation and Swift is a robust open-source programming language created by Apple to develop iOS applications.
Start with simple mobile applications such as a calculator, To-Do-List, Daily Planner, or a task management software and eventually move into more complex programming projects such as a listing app, messaging app, or a simple mobile shopping app.
Be creative. Think about a concept that you’ll throw your money to make an impulsive purchase decision on your app store or play store. If you as a user value it, there’ll probably be many people who think it is useful.
Check on platforms like Quora and Reddit to learn what people talk about in terms of their needs. Create an application to solve such a problem.
Top firms need top talent who make creative developments with their technical skills.
4. A data analysis model or data forecasting model
Data analysis or data forecasting models are not generic applications. Thee are very specific to a problem an organization or a project face.
Therefore, the solution is also a unique one.
You’ll be able to showcase your understanding of basic statistics, data structures, math, logic, and machine learning algorithms in coding such a program.
Python, C, and C++ are excellent programming languages to develop data models – data analysts will use SQL to communicate with the database.
5. A chatbot
Chatbots are widely used on corporate websites, mobile applications, and social media pages to save time on repetitive communication.
If you’re to create a chatbot, you need to collect the right data to feed into the AI and test them to train it.
You can use any popular programming language including Python Java, and PHP to create one.
Choosing a suitable algorithm would be important here. Some of the popular algorithms used to create chatbots are Markov chains, Natural Language Processing (NLP), Support Vector Machines, and Decision Trees.
These are projects with great commercial significance and the hiring manager would love to explore more about you.
API stands for Application Programming Interface – which enables two software components to communicate with each other to perform a task.
Here’re a few example programs you could create with APIs:
- A social media post scheduling tool
- Weather reporting mobile app
- A hotel or flight booking website
- Car ride booking website connected to the map
You could create an API using any language that can interface with SOAP (Simple Object Access Protocol) – Java, PHP, and Python are mostly used.
7. An AI-powered software
What if you could create something so exciting like Google Assistant, Alexa, Siri, or Cortana?
You could showcase your programming skills, artificial intelligence knowledge, and data processing skills in a single project.
However, this could be quite complex. So if you’re an experienced candidate trying to get a placement in one of the fortune 500 companies or applying directly to an AI-based programming job, you should try this.
You could create a self-driving toy car, a virtual assistant, or an AI-based marketing automation software. The right project could even make you an entrepreneur and you’ll no longer need your resume.
SaaS (Software as a Service) is a way of delivering applications over the internet instead of the conventional installation method. Most applications are delivered either free of charge or at a monthly subscription which the user can cancel at any time.
There’re hundreds of Billion Dollar businesses that have emerged in SaaS in many industries such as healthcare, fitness, technology, communication, design, and many more .
These are some of the popular examples:
- Adobe creative cloud
Especially if you’re applying to work for a SaaS platform, having a simple yet creative SaaS in your portfolio would be an advantage.
9. A payment gateway
Though this will be a quite challenging project to take up, it surely will stand out your application from the rest of the developers.
Python would be the go-to language for developing a payment gateway while you’ll get experience in different APIs and web security features – such as two-factor authentication and fraud detection systems.
10. A simple robot
Use Python, C, and C++ to code a robot.
Robots are being popular for the last half a century and the developments are still going on to create use cases to effectively utilize robotics technology.
You don’t have to create a complex robot that can drive a vehicle or go shopping with your grandparents.
Create a simple project that showcases your programming skills and mechanical systems knowledge. You’ll get hands-on experience using motors, motion sensors, cameras, and a whole lot of hardware.
- A stair climber
- A line follower
- A floor cleaner
- A robotic arm
11. A simple simulation
You could build an interesting computer simulation project. Every simulation doesn’t have to be visual and some could give a numerical or textual output depending on the project.
12. Web scraping
Web scraping is the process of extracting content and data from a website. This is particularly an illegal practice to do it for a publically unavailable domain.
But if you do it right: the legal way, it would have tremendous applications for companies to collect important data efficiently from other websites on the internet.
Python is the most popular language for web scraping. Its large collection of libraries such as Numpy, Matlplotlib, and Pandas provides faster web scraping and data manipulation techniques.
13. A simple blockchain project
A blockchain is a digital ledger of transactions that is publicly distributed across its entire network making it impossible to cheat, hack, or change.
As blockchain is becoming popular and powerful with web 3.0, having a project under your wing would be highly valuable.
Here’re some of the projects you could consider creating:
- A cryptocurrency wallet or a blockchain wallet
- Digital asset marketplace (DAM)
- A fake product identification system
- A peer-to-peer ridesharing platform
- A blockchain-based simple voting system
Solidity is the most stable programming language used for blockchain developments while other coding languages such as Java, Python, C++, and Ruby can also be used.
14. A simple NFT project
This is a type of blockchain project that is widely popular these days with many use cases and most employers are requesting candidates to have a basic understanding of the technology.
NFT (Non-Fungible Tokens) are unique cryptographic tokens that exist on a blockchain. These tokens can not be replicated making them easier to buy, sell, and transfer without fraud.
Though you could create an NFT without any coding, try creating it from scratch to take full technical advantage of it in your portfolio. Coding the solidity smart contract, deploying it onto the Mainnet, and setting the NFT price would get you through an important earning curve.
You’ll need the skills in Metamask, Solidity, Hardhat, Pinata, and Alchemy for the project.
15. A no code or low code project
The world is going in the direction of no-code and low-code developments. If you’re a programming specialist, you’re part of a team that facilitates this change.
But if you’re a beginner in IT, you could create some low-code and no-code projects to showcase your creative thinking and logical problem-solving approach.
Here’re some example projects you could create without coding:
- Websites: most CMSs allow to build websites with just drag and drop functions
- Mobile apps: simple task manager, weather app
How to Find Relevant Programming Projects to Work On?
All these projects need skills in different programming languages and most importantly TIME. You can’t do all these and you don’t have to before applying for a job.
As a programmer, you might have already decided your path – the type of work you’re looking for – and the type of company. If you haven’t decided yet, it’s time to do that.
Search your ideal job description on LinkedIn and see the type of coding skills they’re looking for.
Go to your ideal company website and crawl through it to find out the company’s vision, mission, and future strategic direction. Study their plan for the next 10 years – and their views on new technologies.
With these, you’ll have a pretty good understanding of what projects you should focus on.
Get Paid for Your Projects
When you decide which projects you’re going to execute, without jumping straight into coding, see whether you know anyone in your network who would need this.
You can post about the project on LinkedIn stating that you’re looking for a sponsor or a client for the project.
For example, if you decide to build an e-commerce website, build it for a real business. Give the client a great price that they can’t get from outside.
This is important for three reasons:
- You can cover your cost and the value of your time.
- You don’t have to keep paying for the domain and hosting for years.
- A live project example is worth more in an interview than a mere sample.
Tips to Land Your Dream Job with Your Coding Projects
This is an approach in which you could get a placement in a firm even if they don’t have active vacancies right now.
This is also called Permissionless Apprenticeship.
The best platform to execute this is LinkedIn.
Connect with the technical managers, hiring managers, and C-level executives of the company you want to get a job in.
Find an immediate solution or improvement you could make to their software, system, or product.
Create a sample of the work and post that on LinkedIn mentioning the managers who are connected.
Showcase where they can improve instead of criticizing their existing systems.
There’s a higher chance you’ll get a placement for a job, internship, or even a chance to implement a one-time freelance project in the company.
How to List Programming Projects on Your Resume Masterfully
When writing your projects on the resume, use a consistent format. Make a separate section on your resume after your main experience and education sections – name it "Personal Projects", "Programming Projects", or "Coding Projects".
As you send your resume in digital format, include links to your projects.
Here’s the format we suggest to write your projects:
- Name of the project and timeline
- Project description
- Client (if available)
- Programming languages used
- Challenges faced/ results achieved
- Link to the project
- Link to the source code
Pick the information you’re going to write based on the project and the space availability.
A SaaS product that turns a blog post into a video
A free version is currently live with 1200 monthly users
Where Else to List Your Projects on the Resume?
You could list some of your projects in the other sections of your resume if you find them related to the position you’re applying for.
Add the link to your portfolio website that you created in your header. That is your project which consists of detailed information about all other projects you carried out.
If one of your projects is directly related to the position you’re applying for, you could include that in the professional summary.
Professional summaries introduce candidates and their key achievements to hiring managers – show them that you’re a perfect fit for the job by including the most relevant project from your portfolio.
A passionate web developer with 2 years of experience working with WordPress, Shopify, Magento, and Joomla and with advanced HTML and CSS knowledge seeks to join Apex Holdings as a web developer. One of the e-commerce websites I developed for a fitness supplement company made $2M in sales in the last year.
Include any achievements or accomplishments related to your project in your professional summary.
A cover letter should consist of 3 or 4 short paragraphs describing your key skills and experience. Use one paragraph to briefly describe your key project experience related to the job.
Show the hiring manager that you're already familiar with the work you'll be doing.
Check out our resume builder to create a perfect cover letter .
Should I write a separate section for personal coding projects on my resume?
If you are an entry-level candidate without any previous experience in the industry, you could list your personal projects under your main experience section. This way, you can utilize more space in your resume to showcase your projects in detail.
However, if you’re an experienced candidate with years of experience, you should have a separate section after your experience and education to list your personal projects.
How to write coding projects in progress on the resume?
If you have started a programming project and are still on your way to completing it, you could list that on your resume. In this, you should state after the project name that the project is in progress. Also, note an expected completion date.
Create your resume with the best templates
Create your resume in 15 minutes
Sample letters to download
Advice for getting a job
16 Computer Science (CS) Resume Examples for 2023
- Computer Science (CS) Resumes
- CS Student Resumes
- CS Resumes by Experience
- CS Resumes by Role
Writing Your Computer Science Resume
When you’re a computer science student looking for an internship or your first full-time role as a developer, deciding what to include in a good resume and how to format it correctly can be challenging.
We analyzed countless computer science resumes and chose the top 16 examples to help you get started. No matter if you’re looking for your first real-world coding job or are a seasoned campaigner, we have a resume designed to match where you’re at in your career.
The hardest part of resume writing is figuring out how to do a resume . Our resume tips , resume maker, and free Word resume templates have helped developers get interviews at companies like Facebook and Microsoft, so they’re a great place to start.
Computer Science Resume Example
or download as PDF
Why this resume works
- If you’ve already had an internship or related work experience (as a research assistant, for example), you want to highlight that experience at the top of your computer science resume. Lead with your strengths, and if you have the experience, that’s a real asset.
- Hiring managers review a lot of resumes for CS internships and entry-level roles. Don’t be afraid to let your personality shine! Your activities outside the classroom can help you stand out if you have a unique interest.
- Starting with a resume outline example can help guide you in how to include a project or two on your final resume.
Computer Scientist Resume Example
- Your computer scientist resume should build upon any related experience, perhaps as an entry-level computer support specialist. Your experience coupled with a four-year degree can open a career path for you.
- Use any previous education and experience as a launchpad to land your next computer science role.
Computer Science Student Resume Example
- Browse through our free resume templates on Google for some inspiring designs suited for little to no experience.
- Employers understand that people looking for their first programming role won’t have relevant work experience to discuss. In this case, strive to demonstrate your interest in computer science through personal projects and what you did outside of class during your school years.
- At this point, your education is your greatest strength, so be sure to list all the relevant classes you’ve taken that make you a great fit for the role to which you’re applying.
Computer Science Internship Resume Example
- Don’t list too many skills. A hiring manager wants to know your strengths. It’s much better to list two to three languages or tools you’re really strong in than ten you wouldn’t be able to answer questions about in an interview.
- List work experience, even if it’s not directly related to computer science. It shows you can handle responsibility and are reliable. Combining this with the technical skills on your resume can give you an advantage over the competition.
Computer Science Major Resume Example
- The CS courses you’re studying will give an employer a better picture of what theoretical knowledge you’re well versed in and can bring to your first job.
Computer Science No Experience Resume Example
- The details of a personal project—like one where you designed and developed a portfolio website—are a great addition to your computer science no experience resume.
Entry-Level Computer Science Resume Example
- When it comes time to apply to your first full-time role after graduating with a computer science degree, you should try to make your entry-level computer science resume as complete as possible. This means finding a professional resume template that includes your education, relevant skills, projects you’ve worked on, and any relevant internship experience.
- When talking about your internship experience, you should precisely define what you worked on and which technologies you used. Don’t be vague.
- To make the case you’ll have a real impact as a full-time developer, you should quantify the impact of your internship achievements. Numbers make a much stronger case than words, so using them will set your resume apart.
Entry AGS Desktop Publisher Resume Example
- As a desktop publisher, you use publishing software to create various documents and products, including financial reports, business proposals, books, newspapers, newsletters, packaging, tickets, and business cards. You format and combine text, numerical data, photographs, illustrations, charts, and other visual elements.
- Analyze locally available job descriptions and take note of consistent skill requirements. These requirements serve as a physical roadmap of what to include in your resume.
- Specialize using the physical roadmap from the local analysis mentioned above to create an aspirational checklist of what to learn/continue learning to be maximally effective.
- Career objectives exist to support and enhance whatever work experience you list. Instead of opting for a lengthier resume that includes irrelevant experience, your entry AGS desktop publisher resume can use a career objective to instill confidence in the reader and prove that you have a proven, albeit short, history of driving value.
Entry-Level Android Developer Resume Example
- As an aspiring developer, your entry-level Android developer resume has options for showcasing your available skillset.
- The key here isn’t reinventing the wheel but creating something dynamic and unique that can’t be easily replicated with a few Google searches and a video tutorial.
- Some internships require a fully completed degree to be in hand before starting. Although this is becoming more uncommon with the introduction of online coding trade schools (boot camps), research needs to be done regarding individual markets and locations.
Senior Computer Vision Scientist Resume Example
- Your senior computer vision scientist resume should be steeped in well-documented data and reporting. When updating the resume skills list on your resume, there are two primary sources from which you can collect data.
- The first source is the company’s list of required skills from the job description. This list provides the exact skills needed to excel in the role.
- The second way is to look at desired job titles in a specific geographic location. After evaluating the market’s desired skill requisites, adjustments can be made to showcase expertise to the general “heartbeat” of what employers in the area are seeking.
- Emphasize specific bullet points with KPIs that complement and enhance the general “heartbeat” of the desired market.
Computer Programming Resume Example
- So, what else can you do to ensure that your resume impresses recruiters? Well, an elegant template with subtle color accents would add flair to your application. Also, this format gives your piece the room to balance text and white spaces for a formal outlook.
Computer Engineering Resume Example
- Take this direction, and demonstrate your numbers in production errors and hardware costs (cue: 27% reduction in production errors and reducing hardware costs by 18%).
Computer Technician Resume Example
- Be sure to highlight these achievements in your resume all while integrating quantifiable metrics to add credibility to your achievements, making yourself a strong candidate.
Computer Science Teaching Assistant Resume Example
- Your computer science teaching assistant resume should contain the key sections recruiters need to see. It may be tempting to include other sections, many projects, or even non-relevant work experience when writing your academic resume, but that can greatly hurt your chances of being interviewed.
- The most important sections are skills, work experience, education, and relevant projects.
- For example, “Engaged with industry to maintain 100% fluency in the area of focus and provide opportunities for students to work on industry projects.”
- In the eyes of the reader, this bullet point means you will not need a lot of training and will bring immediate value to the company when hired.
Computer Science & Engineering Teacher Resume Example
- Adding a summary gives you the chance to reinforce your abilities with software engineering, curriculum development, and teaching, overall increasing your chances of landing an interview.
- Don’t forget to customize your skills section in addition to the other sections on your resume; check the job description for skill keywords you can include to catch any recruiter’s eye.
Computer Science Tutor Resume Example
- For example, you could include experience that involves working with students, colleagues, and school administration.
- You should also include soft skills, even though they’re difficult to quantify. Scan the job description to find soft skill keywords you can use in your skills section or work experience.
- Projects are a good way to demonstrate your tech knowledge, especially if you have limited work experience. However, projects are formatted slightly differently than work experience; use our resume outline example to show you how to add relevant projects to your resume.
- Your skills section is vital for demonstrating your technical abilities – include the software and tools you’re comfortable using and especially include any tools that are listed on the job description.
Related resume guides
- Data Analyst
- Data Science Resume
- Java Developer
- Data Engineer
Early in your computer science career, you must keep your resume to one page. As such, real estate on your resume is valuable. You should only include a resume objective if it adds value and increases your chances of getting an interview.
So, what is a resume objective for a computer science student? It’s a statement that succinctly states your skills, what you’re looking for in the job you’re applying for, and how you’ll add value in that role.
That sounds like a lot, but it’s not that bad in practice. You should keep it to two to three sentences and customize it to each role for which you apply. Here are a couple of examples from the resumes above:
- “I’m looking for an internship where I can utilize my experience with natural language processing and building web apps for non-technical users to further the mission of Coursera in democratizing education across the world.”
- “Industrious recent computer science graduate with a zeal for innovation. Seeking a position at Sikka Software, where the strategic focus on delighting users aligns with my creativity and desire to enhance social events through technology.”
Alternatively, if you’ve built some valuable experience, you may want to consider a resume summary statement . Only include one if you can successfully and specifically highlight your greatest career accomplishments.
Projects on your computer science resume
When you’re looking for a computer science internship or your first full-time role as a developer, projects are a must-have on your resume.
These can either be projects you completed as part of a class or something you went out and built on your own. Projects are the best way to show a potential employer that you can take what you learned in class and apply it to the real world.
More than that, they’re a great way to demonstrate your interest in coding outside of your classwork. In your projects, mention exactly what you built and the languages/ libraries you used. Here are some examples:
Social media scheduler
- Built a responsive web app using Django and Node that allowed users to schedule social media posts across Instagram and Twitter
- Utilized the Twitter API and Instagram API
- Built features using scikit-learn in Python that learned what time of day maximized engagement with social media posts which increased the overall user engagement rate by 15%
- Released app for free for University of Pittsburgh students, and it quickly grew to over 500 monthly active users
- Built a full-stack web app to allow users to simulate and visualize outcomes of poker hands against opponents of different play styles using open-source cards.js on the front-end
- Utilized sci-kit learn in Python to simulate possible outcomes under different scenarios that the users chose
Computer Science Resume  - Guide & Examples
As a computer scientist, you probably have a lot of skills and qualifications to your name.
On the downside, this can make writing a computer science resume even more complicated.
We get it. The more things you have to include on your resume, the more of a mess it can become.
But, actually, it doesn’t have to be so hard – or so cluttered.
To help you write a flawless computer science resume, we’ve put together a complete guide, including the following sections:
- Computer Science Resume Example
- Step-by-Step Guide to Write Your Computer Science Resume
- 24 Skills to Put On Your Computer Science Resume
So let’s cut down to the chase!
Computer Science Resume
Here’s what makes this computer science resume such a prime example to follow:
- It uses the reverse-chronological format. The reverse-chronological format is one of the most popular resume formats in the world.
- Provides relevant and complete contact information . Recruiters will have no difficulty getting in touch with this applicant.
- Short and sweet resume summary . The summary does a great job of highlighting the applicant's experience and ambitions.
- Includes a thorough list of relevant skills. This computer science resume includes both hard and soft skills that recruiters would be looking for in a candidate.
- Achievements-oriented work experience section. This computer science resume example focuses on achievements, setting the candidate apart from other applicants.
- Short education section. As someone with plenty of work experience, this candidate keeps their education information short.
- Additional sections. This application includes additional sections such as volunteer experience and interests, which can help set the candidate apart from other applicants with similar skills and work experience.
Applying for a specific position in the computer science field? Check out more of our resume examples here:
- Software Engineer Resume
- Web Developer Resume
- Java Developer Resume
- Artificial Intelligence Engineer Resume
- Data Scientist Resume
- Data Analyst Resume
- Engineering Resume
- Data Entry Resume
How to Write a Computer Science Resume
Now that you’ve seen what a great computer science resume looks like, let’s go through all of the steps and tips to help you write one that’s just as good!
#1. Format Your Resume the Right Way
The very first thing the recruiter will notice is the resume format.
We recommend you use the chronological format . This format lists your work experience in reverse-chronological order. This means your most recent job comes at the top of your work experience section.
Most importantly, this is the most popular format among recruiters and HR managers worldwide, so you can be sure you’re on the safe side using it.
Here’s what the reverse-chronological resume looks like:
The other two resume formats include:
- The functional . This is also known as the skills-based resume. This format focuses more on your skills rather than your work experience and it’s recommended for recent graduates with little to no experience to show for.
- The combination format. This is sometimes called the hybrid format and puts equal focus on both skills and work experience.
Once you’ve dealt with the formatting part of your computer science resume, it’s time to get to the layout and style.
Specifically, this involves:
- Keep it under one page. Unless you’re a professional with 10+ years of experience, or you’re applying for a job in academia, your resume shouldn’t be longer than one page. Keep in mind, recruiters receive hundreds of applications a day and don’t have time to read long resumes. A 1-page resume consisting of your skills and work experience is more than enough.
- Use straightforward headers . Many companies use applicant tracking systems (ATS) to look for the headings in your resume. Writing “previous work” instead of “work history” can lead to your resume being overlooked.
- Use a catchy font that stands out. For example, Ubuntu, Roboto, or Overpass are interesting enough to catch the recruiter’s attention while still maintaining a professional look.
- Save your resume in PDF format. Unless specifically directed otherwise, make sure to save your resume as a PDF file. That way, you can be sure recruiters will be able to open and read it by any device and OS.
For more information, check out our guide on resume formatting and layout .
Use a Resume Template
Writing, designing, AND formatting a resume can take a lot of time and work. In fact, creating a really effective resume from scratch can take hours of your precious time.
Why go through all of that, when you can use one of Novoresume’s free, plug and play resume templates ?
Our templates were created in collaboration with a team of professional recruiters. They are designed to be eye-catching, easy to read, and easily scannable by applicant tracking software.
See for yourself how good our resumes look compared to the standard black and whites ones:
#2. Include the Right Contact Details
Though the contact information section seems like an easy, straightforward section, you shouldn’t undermine it.
It is super important to get this part right, with no mistakes or typos (for obvious reasons).
First, you want to make sure the recruiters can actually get in touch with you should they want to bring you in for an interview. And second, you don’t want to look sloppy.
Other than that, structuring this section is very easy. All you need to include are:
- Phone number
- Social profiles such as Dribble or GitHub
- Location (city and state/country)
#3. Write a Memorable Resume Summary/Objective
Your resume summary or objective can make a big difference in your computer science resume, as It’s the perfect opportunity to give recruiters a snapshot of your professional history or goals and show them you’re a relevant candidate from the get-go.
But which one should you use for a better impact? Well, that depends entirely on your work experience.
A resume objective is better if you are applying for an entry-level position and don’t yet have too much experience to talk about. Instead, you can focus on what you, as the job seeker, are looking for and can show the recruiter how goal-oriented and ambitious you are.
Seeking challenging work opportunities that allow me to continue learning and developing as a computer scientist alongside a team of some of the best professionals in the field.
A resume summary , on the other hand, is better for more experienced applicants and it aims to provide hiring professionals with a quick overview of your qualifications and work history.
Software Engineer with 11+ years in the industry. Experienced in leading large teams, and working with professionals from a variety of disciplines. Developed a work tracking software tool that increased productivity by 44%.
#4. Describe Your Computer Science Experience
Unless you have no professional experience whatsoever, work experience is a must on any resume . This can be especially true in highly technical fields like computer science where you never really stop learning or developing throughout your career.
To properly format your work experience:
- List the work entries in reverse chronological order.
- Include your title, the company name, and location, and the years attended.
- Add 3-5 achievements and responsibilities underneath each work entry (with fewer bullet points for older jobs).
Now, simply formatting this section the right way isn’t enough.
Your computer science work experience should set you apart from other candidates, which is why we recommend that (whenever it’s possible) you should prioritize your achievements over your work responsibilities .
Think about it - the recruiter already has a solid idea of what a computer scientist’s work responsibilities are.
Write and program software…
Improve interaction between people and computers…
So, what they’re really looking to find out is exactly how YOU excelled at the job.
Another thing to remember when listing out your responsibilities is to make them as quantifiable as possible .
After all, it’s one thing to say you did something and another thing completely to prove it.
Look at the two examples below:
- Led a team of 5 software developers from the conceptualization all the way through to the launch of new financial management software that raised company profits by 25% in one year.
- Increased company profits with my team.
The first example shows the candidate has leadership abilities, as well as describes the actions taken, a timeframe, and results.
In the second example, on the other hand, the candidate might have done that and more, and the recruiter will never know.
Use Laszlo Bock’s formula to easily quantify your achievements. It basically is “accomplished [X] as measured by [Y] by doing [Z]”.
What If I Don’t Have Work Experience?
Though work experience is a huge plus on a computer science resume, no one is born with work experience, unfortunately. This means that those of you who are recent graduates likely have nothing to add to this section.
So what do you do?
The good news is, recruiters don’t expect students or recent graduates to have any work experience. Instead, they want to learn more about your skills, such as programming, mathematics, critical thinking, or teamwork.
Alternatively, you can create a portfolio to include all these skills in one place. Your computer science portfolio can consist of:
- Academic projects
- Personal engineering projects (e.g. games you’ve designed for fun)
- Online contests
- Any freelance work
To learn more, check out our guide on writing a resume when you don’t have any work experience .
#5. List Your Education
The education section is as important as ever and, as such, it should be included on your computer science resume. However, compared to the work experience and skills sections, it doesn’t need as much space or attention.
All you really need to do is provide information about:
- Your degree
- Name and location of your university
- Years you attended
Check out our example for a simple guide:
BSc in Computer Science
Massachusetts Institute of Technology, Cambridge
08/2011 - 05/2015
Feel free to add any academic achievements or extracurricular activities in bullet points in this section, to add value to your resume (especially if you have just recently graduated and have no work experience whatsoever).
#6. Write Relevant Skills
As we mentioned before, the skills section is one of the most important parts of your computer science resume, especially if you are applying for an entry-level position and don’t have much work experience yet.
In fact, a 15 to 20-word skills section has been shown to improve an applicant's chances of getting hired .
However, don’t make the mistake of listing all the skills you can think of. That will just crown your resume with unnecessary information and make it look sloppy.
Instead, you should list industry-relevant skills and specifically, those required by the position (if you have them, that is).
So, make sure to check the job ad and see whether any of the required skills match yours, and definitely include them in your skills section.
24 Computer Science Skills to Put On Your Resume
Hard skills for computer science resume.
- Computer and technology knowledge
- Programming languages
- Technical writing
- Software development
- Computer hardware engineering
- Data analysis
- Information systems management
- Linear algebra
- Discrete mathematics
Soft Skills for Computer Science Resume
- Attention to detail
- Teamwork & cooperation
- Training and teaching
- Time management
#7. Use These Additional Sections
When it comes to a computer science resume, there’s no doubt that the work experience, skills, and education sections are the most important (usually in that order). However, additional sections can also bring a lot of value to your resume .
If you have little to no work experience, they can be a great way to add more meat to your resume.
On the other hand, if you’re a seasoned professional, they can help you stand out from other applicants with similar skills and experience.
So what sections should you add to your computer science resume?
- Awards & certifications: There’s a lot of competition these days in programming and computer science. One way to prove to recruiters that you’re ahead of the other applicants is by showing what awards and certifications you’ve received.
- Projects: Another great way to tell recruiters you’re not just another applicant with a generic resume is to show them the most interesting projects you’ve worked on. This doesn’t necessarily have to be work projects, but can be school assignments or personal projects you’ve worked on.
- Hobbies & Interests: Though this section isn’t the most important, it can still provide super useful insight to recruiters. For example, if you list designing your own games, they will know that you are really passionate about programming and even spend your downtime honing your skills.
Awards & Certifications
- Outstanding Contribution Certificate, 2020
- Computer Entrepreneur Award, 2019
- Seymour Cray Computer Engineering Award, 2017: for the most creative and innovative contribution to high-performance computing.
- Worked with a team of three programmers to create an e-Authentification system using a combination of QR code and OTP.
- Designed and built a website for the final project at MIT.
Hobbies & Interests
- Puzzle-based video games
- Designing and programming mobile games
- Hiking and mountain climbing
#8. Attach a Cover Letter to Your Resume
While there are a few career coaches and hiring professionals who might disagree, we (along with most other professionals) always recommend that you attach a cover letter to your resume.
The majority of recruiters expect a cover letter and will not take your application seriously without one. Besides, writing a cover letter gives you the opportunity to explain anything you couldn’t on your resume (like gaps between jobs).
A cover letter should include the following components:
- Header - This section should list your contact information, along with the contact information of the hiring manager you are addressing.
- Greeting the hiring manager - Add a personal touch by researching the recruiter’s name (usually be the head of whichever department you are applying to). Showing you’ve gone the extra mile will set you apart from candidates who include a generic “Dear Sir/Madam” greeting.
- Opening paragraph - Here you really want to grab the hiring manager’s attention and impress them with your top 2-3 achievements.
- Body - You should convince the recruiter that you’re the perfect candidate for the job. Explain exactly what sets you apart from other applicants and what makes you a good fit for their company culture. You can also use this to say anything you couldn’t in your resume (e.g. explain a career gap).
- Closing - You want to leave a lasting impression with the closing paragraph. Make it memorable so the hiring manager won’t forget you by including a call to action (e.g. it’d be great to discuss this more in-depth in an interview).
For more tips on how to write a great cover letter, make sure to check out our complete guide .
Now you’re finally ready to start writing your computer science resume and advance in your career.
Just remember the steps and tips we gave you to help you along the way:
- Use the right resume format - we recommend the reverse-chronological format.
- Enter your contact details carefully - make sure the recruiters can contact you and you don’t look sloppy.
- Include an effective resume summary or objective - help the hiring professionals get a better picture of who you are and what to expect.
- Focus on your computer science experience - put more emphasis on experience and accomplishments rather than responsibilities.
- List your education - make sure to add the relevant educational background.
- Include relevant skills - list only the skills that are relevant to the position you are applying for.
- Include additional sections when relevant - when appropriate, add sections that can add value to your resume, especially when you don’t have much experience.
- Attach a cover letter - don’t forget to include an impactful letter that will set you apart from other applicants.
Programming Projects for Resume: Tips & Examples
What is a programming project
Should i list programming projects on my resume, what skill should you use in your programming projects, how to add programming projects to your resume, programming projects to include on your resume, tips and tricks for your programming project, takeaways: programming projects for resume.
Quick Answer: Including programming projects on your resume is a great way to show off your skills and stand out to potential employers. A programming project can be anything you've created using programming languages, such as apps, websites, or engines. It should be relevant, realistic, and complete. To add a programming project to your resume, include its name, duration, tools and technologies used, and a few bullet points about what you learned and achieved. GitHub is a good platform to share and store your code. Choose a project that showcases skills related to the job you are applying for.
You are new to the programming world and searching for your career start?
Or you are an old dog in the profession and looking to spice up your resume?
Either way, the most effective thing you can list on your resume are your programming projects.
And not just list them as names.
Anyone can write on their resume that they invented Facebook.
But if you can’t prove it, you lose your chances of getting the job.
In this article we are going to cover anything you need to know about including your programming project on your resume, including:
- What is a programming project?
- Do you need programming projects on your resume?
- How to add programming projects to your resume?
We also have some great programming project ideas for you to take advantage of.
And we are going to leave you off with some great tips and tricks .
If you have some general doubts about your resume’s strength, you should take the time to learn How to Make Your Resume Stand Out .
But if you are hard on learning how to include your programming projects on your resume, stick around.
Simply put, it is everything you have created using programming languages.
It can be an app, a website, or engines that you created yourself.
Their main purpose is usually to show off your skills as a programmer and make your job-search process easier.
If you want to take one step further, you can even make your programming project to be specific to the industry you are applying for.
You should always aim at your project being relevant, realistic and complete.
Presenting such a project on your resume shows your potential employer that you are capable of finishing a task.
The IT industry, at least for now, seems like an evergrowing one.
And as it grows, the entrance level lowers more and more.
Nowadays everyone who has the basic skills and knowledge, thanks to computer science courses or self-learning, has the opportunity to join the IT sector.
That makes the competition for a job position quite difficult.
You need to show the hiring manager that you are the right person for the job.
One of the best ways to do that is via programming projects.
And here is why.
Show Your Skills
First of all, you need to show what you can do.
Saying you are excellent at programming in Java is one thing, but showing it is what can really improve your chances.
Showing a working application, using that language shows both your knowledge and your skill level in the area.
Show Your Passion
Showing you are passionate about something always works in your favor.
And nothing says passion like creating something in your free time .
Creating a complete and working programming project in your free time can really show you love what you do.
The employer would definitely appreciate that effort, as it shows you really invest your time and soul in the process.
Show You Are Eager to Learn
Nothing shows your ability and devotion to learning like creating a programming project.
Especially if you are at the beginning of your journey.
No matter how good you are and how fast you learn, you will meet great obstacles while creating a programming project.
And that is the moment you really start learning because solving problems is the best teacher.
So, by presenting your complete and working project, it shows that you are devoted and instead of giving up, you learned a lot along the way.
You might be asking yourself if experienced programmers need to present their programming projects as well.
The answer is yes.
Personal projects are also a great asset to have on your resume.
The more experience you have as a programmer, the more complex your programming project will be.
But never leave it out, as long as it is relevant to the job position you are applying for.
Deciding what skills to show on a programming project depends entirely on the job position you want.
Before starting to code, think about what kind of programming you would like to do.
There is a significant difference if you want to be a Front-End Developer, Back-End Developer or Web Developer.
You are going to need a different skillset for each.
Once you decide on that, you need to browse through some job listings.
That’s usually the best place to learn what technical skills are required by each company.
Don’t try to include the whole list of skills in your programming project, it will probably not work as you wished.
What you should do is pick those which you are most confident in and which supplement your other experience.
Listing your programming projects is not an easy task either.
We already gave you the first hint - they should be relevant to the job you are applying for.
Apart from that, there are a few things that programming projects on your resume should have:
- Name of the Programming Project
- How Long it Lasted
- Tools and Technologies Used
Also it would be really good if you include a few bullet points about what you did and what you learned in the process.
Don’t forget to also include any achievements and awards that you might have because of your programming project.
When it comes to placement, you have two main options.
The first option you have is including it in the Work Experience Section .
That’s a good option if you are writing a resume for an internship or you don’t yet have much experience in the area.
That would shift the focus from your lack of professional experience and would show that you have the skills needed.
However, if you have some sufficient work experience, you would want to add your projects to an Additional Work Experience Section.
If you seem to have some empty space on your resume, you can afford to mention some less relevant programming projects as well.
Knowing additional frameworks and languages is always an advantage and impresses potential employers.
If you feel it would be appropriate, you can include some of your programming skills in your Skills Section as well.
In theory everything sounds easy.
But one of the most difficult tasks is to figure out what your programming project will be.
That’s entirely up to you, but we’ve got some great ideas for you.
Building a website is one of the easiest programming projects you can create.
But you should not underestimate it though.
If you want to show off your skills for creating websites, it may be just the right time for you.
More and more companies nowadays decide to take the step to digital transformation.
With that increasing demand for web developers, it gets harder to stand out in front of the crowd.
But before diving into the real projects, you should create your own website, as a training ground.
This way you can practice your coding skills and prepare your online portfolio.
While creating a website you can choose one of two fields to develop yourself into - web development or web design.
Some might argue that web designers don’t really need any coding skills thanks to pre-made templates.
But it is undeniable that a web designer with coding skills in front-end development is irresistible to hiring managers.
For front-end web development, we can recommend you to use GitHub and Sublime Text to practice your coding skills .
If you want to take it one step further and train your HTML and CSS skills in real time, you can try Chrome Developer tools.
If you really want to perfect every aspect of your website, you can include:
- Important Elements for Web Development
- Customized Graphics
- Login Authentication
- Search Engine Optimization (SEO)
You can also decide between your website being one-page or multi-page one.
All these details can really show the hiring manager that you are adaptable and ready to learn new aspects of web development.
Adding a game to your programming projects list can really impress hiring managers.
Such a programming project can show hiring managers that you are capable of developing both front-end and back-end coding.
It also shows that you have an understanding of logic, data structures and algorithms.
The technologies you can use vary a lot, so you have a wide range to choose from, depending on the game in mind.
It can use any of these, and many more:
- Visual Studio
A Messaging Application
A messaging application can catch the hiring manager’s eye for many reasons.
Such a programming project can show your ability to create software that transfers data instantly from one device to another.
Furthermore, messaging apps usually require you to use API, which shows some more additional skills.
Once you have the basics of your messaging app, you can go wild.
You can include various different things, instead of just texting.
Some ideas you can use to spice your app up are:
- Functionality to add emoticons to the text
- Functionality to upload images
- Functionality to play games with your friends
A Copycat Application
If you run out of ideas of what your programming project to be, you can always create a copycat application.
What a copycat app refers to is recreating an app that is already created by somebody else.
That has its advantages too, though.
The main skill it shows the hiring manager is that you can emulate an app or program.
This gets even more impressive if the app is complex or requires advanced skills.
As always, we are not going to leave you without any tips .
There are just a few things you need to keep in mind.
Don’t worry, we are going to go through them all one by one.
Use appropriate keywords to describe your programming projects
Sometimes creating an extraordinary programming project is not enough to get you an interview, especially if the company is using ATS.
ATS stands for Applicant Tracking System and is a software that preselects resumes, depending on predetermined keywords.
So make sure you check out the job listing and use any relevant keywords you can find to describe your programming project.
Show off Your Relevant Skills
You might have a great variety of skills and knowledge, but you should know how to use it in your favor.
You don’t want to use 10 different programming languages for 10 different projects that you want to show your potential employer.
That wouldn’t really work in your favor.
It would seem like you don’t know what your strengths are, and you are just trying everything.
Also keep in mind that most cool projects we see everywhere are usually created by whole teams, and you are just one person.
You should compare your programming project idea to your limits and find the perfect middle.
So, all in all, know your strength and know your limits.
Make Your Code Accessible
You need to make sure that your potential employer can see the code behind your project.
That’s the only way they can really judge your skills .
The most used platform for that purpose is GitHub.
It is a great place to store your code, share it with other programmers and ask more experienced professionals for feedback.
And most importantly, it shows one more skill to your potential employer, as work with GitHub and similar platforms is a great asset in your job hunt.
We are all done.
Now you know when and how to use your programming project on your resume.
You are now ready to take the best out of them and really impress the hiring manager.
Don’t forget our tips and tricks, and make the best out of them.
Check out our programming projects ideas once again and get you your next interview in no time.
- Resume Guides
The Success Journey: Marissa Mayer’s Pre-Yahoo Resume
What is a Resume? Definition, Structure, Purpose, Types & Meaning
Why and How to Write a Resignation Email (With Examples)
How Do You End A Resume
500 Irish Created A Resume For Saint Patrick. Here It Is!
The Best Resume Formats You Need to Consider (5+ Examples Included)
- Create Resume
- Terms of Service
- HTML Sitemap
- Resume Examples
- Resume Templates
- Resume Formats
- Resume Checker
- Resume Skills
- How to Write a Resume
- Modern Resume Templates
- Simple Resume Templates
- Cover Letter Builder
- Cover Letter Examples
- Cover Letter Templates
- Cover Letter Formats
- How to Write a Cover Letter
- Cover Letter Guides
- Job Interview Guides
- Job Interview Questions
- Career Resources
- Meet our customers
- Career resources
- English (UK)
- French (FR)
- Swedish (SE)
© 2023 . All rights reserved.
Made with love by people who care.
- Cover Letter Builder Create a cover letter in 5 minutes. Get the job you want.
- Cover Letter Examples See perfect cover letter samples that get jobs.
- Cover Letter Templates Find the perfect cover letter template.
- Create a Cover Letter Now
- Resume Builder Create a resume in 5 minutes. Get the job you want.
- Resume Examples See perfect resume samples that get jobs.
- Resume Templates Find the perfect resume template.
- Create a Resume Now
- My Documents
12+ Best Programming Projects for a Resume
Struggling with creating your perfect programming resume? Make it better by adding personal projects and specific expertise. Here is the list of the projects you may create on your own, plus winning tips for improving your resume with their help.
How do you get your foot in the door if you are a newbie in the field of IT? How do you jump over toothy competitors if you already have experience? There is one answer to both of these questions - start with your resume, as it creates the first (and usually right impression of you). In this article, we suggest adding some personal projects to your portfolio to make it even more impressive. Below is a list of ideas you can use to boost your resume and give yourself a better chance of being noticed by a great company.
Why Should You Have Personal Programming Projects on a Resume?
The IT field is not only dynamic - it is quite competitive. What is more, the entrance level is quite low. In other words, everyone who has the basic skills and knowledge gained with the help of computer science courses and self-leaning has the opportunity to become a cutting-edge IT specialist. Therefore, if you want to be a part of the most innovative and money-promising industry, you will have to be creative to get your dream job. Having some personal programming projects for your resume is one way to attract your future employer’s attention and leverage your chances of being hired. Here is why.
Show Your Skills
Show Your Passion
Willingness to do work in your free time is a sign of true passion and love for your job. Of course, the development of a personal project takes time, but the presence of such a project shows you as a person who sincerely invests their time and soul into this process.
Show Your Readiness to Learn
Any personal project can have pitfalls, especially if you are at the beginning of your journey. In the process of creating them, you are faced with problems and tasks that you need to solve. This is an excellent opportunity for self-study in a relaxed environment free from the pressure of deadlines. Therefore, use it.
Prompt! When adding your personal projects to your resume, you can also briefly indicate a list of specific tasks, challenges, and pitfalls you have encountered. But be prepared to explain how you overcame them when a technical specialist interviews you.
Thus, personal projects reflected in the resume is a tremendous competitive advantage for a beginner specialist. However, do experienced programmers need personal projects? Or is solid experience enough to find a new job?
Indeed, a personal programming project works equally well for beginners and professionals alike. Of course, projects created by Senior coders will be much more difficult, and this is another reason to add them to your resume since complex projects show your advanced skills and specific expertise.
The List of Good Programming Projects for Resume
So, what are some interesting programming projects to put on a resume? Here are 13 alternatives you may consider. Each of them requires specific knowledge, skills, and technology usage, so make sure to pick up the ones that suit your specialization best.
1. A simple website or blog
For example, you can think about site scaling possibilities and foresee them in your structure in advance. Or pay attention to the design. For example, create a sales-boosting website using graphic elements and motivating colors.
2. An eCommerce website prototype
eCommerce websites are laborious to create since you need to come up with a lot of sections, listings, integrations, and, most importantly, make outstanding user experience and a smooth sales funnel your top priority. We suggest focusing on one of your future store’s components and matching it with your best skills.
For example, if you are good at user interface prototyping, suggest a prototype that will generate sales and profits. As for the technologies to use, everything will depend on your initial idea - you may create an eCommerce store in the form of a native app or a website powered by Shopify and other specific solutions.
3. A cryptocurrency wallet
A cryptocurrency wallet is also a reasonably simple solution, even though it may sound incomprehensible to someone who hears this term for the first time. To do it, it will be enough to use Bitcoin SDK or Coinbase SDK and synchronize your future wallet with the blockchain ecosystem using APIs.
Great idea! If you create an eCommerce website as your personal project, consider adding Bitcoin as a payment option. This is an advanced way to pay, and more and more websites will embed this function very soon.
4. A listing website
Obviously, you shouldn’t create a jaw-dropping solution like Zillow. However, you still should show your web development skills. To create such a solution, you need basic HTML/CSS and basic programming skills, plus design thinking abilities. What is more, your personal listing shouldn’t be for listing accommodations only. For example, you may create an ads placement platform, a job board, or a car selling website.
5. A simple game
The most important thing in a game is dynamics and high-quality content. To prove your creative talents, come up with some really cool, interesting, and highly demanding characters that will meet the expectations of today's gamers. Among the technologies you need for this is Unity 3D, Visual Studio, and C++.
6. A data analysis model
Models for data analysis are in great demand, and what's more, it's not that hard to create one if you have a dataset. To further improve your self-presentation, create several data models that will work on the principle of regression analysis and classification.
7. A forecasting software
Predictive analytics is another capability of data analysis software. What is more, you may reuse your data analysis model explained in the previous paragraph to turn it into a predictive tool.
8. A chatbot
Creating chatbots is very simple. However, you may make your chatbot more innovative by enabling it with speech and image recognition functions.
9. A simple task manager
There is nothing complex about creating task management software like Trello or Evernote. Take these apps as an example, and come up with your solution. Creating this app, you could show how you understand the Kanban approach - this will be a significant plus for an employee who follows it.
10. A food diary
Weight management and nutritional apps are trendy. Create it to spice up your portfolio. Such applications do not need a lot of features. The most important thing is to make it user-friendly. What is more, you can create such a solution for both iOS and Android using the appropriate programming languages or create a cross-platform application.
An interesting function that you can implement! Add a barcode scanner so a potential user can add meals to the diary using the camera. It will show how you handle the integration of embedded applications with your solution.
An even more fun feature! How about creating a tool for recognizing a meal and its ingredients? Yes, you will have to create an artificial intelligence solution that can recognize images; however, you must agree, this is an entirely different level of professionalism.
11. An instant messenger
Creating an instant messenger, you may showcase your skills for instant data transfer solution creation plus API integration and entertainment features development. Instant messengers are not so difficult to create - their branding will definitely take more time, so this is your chance to strengthen your resume with a trendy application example.
12. A payment gateway
Creating a payment gateway is quite a challenging task; however, it will significantly enrich your portfolio. Developing this solution will require using different APIs and paying close attention to the security features. For example, you may integrate a machine-learning fraud detection algorithm and make an outstanding fintech solution.
13. A recommendation engine
A recommendation engine is an AI-powered tool; however, it shouldn’t be a part of an eCommerce store exclusively. For example, you could develop a book recommendation app that suggests a book based on age, preferences, and previously read stories. To create it, you need an AI programming platform, plus a database.
Enhancing Programming Resume Tips and Lifehacks
Adding your personal programming projects to your resume is a good strategy to highlight your skills, showcase achievements, and stand out from the competition, especially if you are a newcomer to the field of IT. However, there are some pitfalls you should avoid. Below are some winning tips and life hacks that will help you improve your resume, balance personal project development with job search, and attract your future employee’s attention.
Focus on Your Core Skills
You undoubtedly have enough skills to create any projects listed above; however, you should stick only to the most suitable ones. Unfortunately, if you create ten different projects that require entirely different skills, this will not improve your resume . It will give the impression that you do not know what you do best and just try everything.
For example, if you are an iOS developer, there is no point in creating an Android mobile app to add to your resume. Instead, pick up the ideas that suit your knowledge, skills, and competencies best, then focus on the overall quality of your personal projects.
Don’t Bite off More Than You Can Chew
Your passion for software projects and development is undoubtedly good, but you need to assess your strengths sensibly. Cool and popular projects are created by whole teams of specialists from different fields, but you will have to act alone when creating your personal project.
Therefore, before you get to work, make sure you can handle what you have in mind. Start by being clear about the skills you need to complete the project and anticipate potential pitfalls.
For example, if you are a good Python programmer but feel you lack UI design skills, prepare educational materials to find answers and find useful forums where you can ask for help in advance.
Manage Your Time
Looking for a new or first job is time-consuming. You should do a lot of preparatory work, research the open positions, and personally get in touch with each company you are interested in working. Therefore, you need to plan your time correctly and maintain an optimal balance. For example, you might spend three hours a day developing your personal project, and after that, devote three hours to finding new jobs, improving your resume, and writing cover letters .
Show Your Problem-Solving Abilities
Don't create your personal projects just to fill in blank lines on your resume. Templated solutions that are too simple, like a blog quickly designed on Wix, will not surprise your employer but rather spoil the experience. Instead, solve a specific user problem, even if it is hypothetical.
Make Your Code Accessible
GitHub is the best place to store your code, share it with other programmers, and ask the more experienced professionals to give you feedback. This is also a good place for your personal projects. At the technical interview stage, the team lead will definitely ask you to talk about your professional and personal projects and show the code you created.
Prompt! Make sure your code is easy to read and understand, do not create spaghetti - for this, ask other GitHub community members for an opinion before you show your code to a potential employer.
Showcase Your Projects on Your Resume
Once your projects are in place, it's time to add them to your resume to amplify a positive impression and show your best abilities right away. How to add programming projects to your resume?
To do this, you need to include a new section titled Personal Project and list them in the following sequence:
- The name of the project - for example, a Weather App for Android
- The set of technologies been used - for example, Java, Weather API
- The set of skills - for example, general programming, database management, API integration
Optionally, you may track the time needed to create each of the projects and specify the timing to let your potential employee evaluate your working speed and the quality of the code you create.
Get More Attention With the Help of a Cover Letter
Having a logical, structured, and beautiful resume that reflects your personal and professional projects is half the battle in the hiring process. However, you can do one more thing to increase your chances of being interviewed and hired —a cover letter that you send every time you offer your candidacy for a position.
With the help of a cover letter, you show yourself as a candidate who is really interested in working for this particular company. This is an excellent opportunity for you to say the most important things about your skills, abilities, and competencies and explain to a potential employer why you are a great candidate for an open position.
However, writing code and writing persuasive texts are not the same things. That is why creating an eye-catching cover letter with the help of our automated solution will be a better strategy.
The IT industry is dynamic and rapidly growing. There is a free space for everyone who is open to new knowledge and innovations and is ready to learn on the go. What's more, the industry is hiring the best talents, as only the best can innovate by solving problems in new ways. Feel like you want to belong to this industry? You already know what to do.
Don’t miss out on exclusive stories that will supercharge your career!
Get a weekly dose of inspiration delivered to your inbox
You may also be interested to read
20+ Jobs That Pay $100 an Hour or More
11 Tips For Finding a New Job During a Pandemic
How to List Temporary Work on Your Resume
10 Programming projects to boost your resume
Personal programing projects may get you your next job.
But they're not right for everybody.
This guide will tell you everything you need to know about using programming projects in your resume to help you get a job.
Table of contents
How to tell if coding projects will help your resume.
- How to pinpoint the skill to use in your personal projects?
- 4 qualities interviewers look for in a personal project
- 4 characteristics to bake into your programming projects to maximize success
- When is the best time to work on personal coding projects?
10 personal programming projects you can start this weekend
Managing your time, how to present your project online and in your resume, more posts in the career guide.
- Are there enough functional programming jobs?
- Where to find functional jobs
- Where do you find the time to get productive in functional programming?
- What do you really need to know to be hireable?
- The 5 hurdles of hirability
- 10 Programming projects to boost your resume ← you are here
- Join and build a social network
- Job application action plan
- How to leap past 90% of applicants
Put yourself in your interviewer's shoes. Chance are, you are one of hundreds of applicants for this job. The interviewer is tired. They have limited time and energy to spend on each applicant. They probably won't read your resume before the interview.
What are they worried about? Themselves. Their status. How they look to others.
Specifically, they are worried about hiring an unqualified person and looking like a fool.
Your #1 job in the interview is to appear highly qualified for that job. And to do so quickly and clearly, because the interviewer does not have time to check if you really are qualified. I'm not saying you should lie. What you should do is make the truth clear. Your resume needs to highlight interesting facts from your life that make it obvious you would do well in this job.
So that brings us to the question: should you include programming projects in your resume?
Yes, if they clearly and quickly contribute to the picture that you are qualified for the position.
Do any of these people fit your situation? See if you can figure out whether personal projects will help each person.
Jill is a new graduate looking for her first job as a programmer. She has some work experience, but it's mostly helping people fix their websites. It's relevant, but she wants to show that she can code more sophisticated applications so she can work in the finance industry. Are personal Computer Science projects a good idea for Jill?
Yes! Jill has little work experience. Personal coding projects will show:
- She has the skills
- She has the motivation
- She can learn new things
- She has resolve to finish
- She has something interesting to talk about during the interview
The next question for Jill is what skill she would like to develop in the project. Then she'll need to choose a project. We'll talk about that in a later section.
For now, let's move on to Bill.
Bill has been working as a software tester for 5 years. He is familiar with software and wants to make the leap to programming for the better pay and more freedom. Will cool programming projects help him make the switch?
Yes! Bill has more experience than Jill, but it's in a different field. An interviewer might wonder whether Bill really was ready. How much training would he need? Personal projects on his resume can help answer that question.
Bill's next question should be to figure out how to translate the job listing he's targeting into skills he can demonstrate. We'll get to that.
But before we do, let's look and Colleen.
Colleen has been working in software for ten years on a successful product. She's now looking to change companies. She basically wants to continue to work in software. She knows the tech stack of her employer, but she's concerned that any new company will have a different stack. Should she do some programming projects to prove that she can learn new things?
No! As an experienced professional programmer, nothing she could do in her spare time would compare to the magnitude of working on the same software for ten years. She should focus on highlighting aspects of that software that could be interesting to an interviewer at her target company. Think about it: you work on an e-commerce system for ten years. How is a tiny blog engine you wrote one afternoon going to compare to that? It won't seem serious and it won't be worth talking about in the interview.
And what about that new tech stack? Read a book, try to set it up, and mention your opinions on it in the interview. Just to be clear, when I say tech stack , I'm talking about the combination of database, operating system, and other services that make up the software. Because they are combinations, there are millions of them. No two companies have exactly the same setup. Companies expect that it will take some time to learn, so if you don't know everything in the stack, that's okay.
Tech stack is one thing, but what about programming language? Or even programming language paradigm? Let's take a look at John.
Yes! Since he doesn't have professional experience in functional programming, a couple of coding projects showing he can make the paradigm shift will be helpful. Plus, knowing multiple languages will always put you above someone who only knows one.
I hope these examples made it easy to understand how to think about this. The main question is: will this help my interviewer see that I am the right person for this job? Just answer that question for yourself.
If you've determined that you need some personal projects, how do you go about choosing them? There is one more question you should ask before you start designing the project.
What skill should you use in your personal programming projects?
If you're making a career move, you should plan your personal projects with the career move in mind. So how do you do that? The first step is to read the job listing. The job listing often lists technical skills they are looking for. You probably won't be able to do all of them in your coding projects. Pick ones that can supplement your other experience.
When is the best time to work on personal programming projects?
Let me ask you this: when is the best time to learn to cook a new style of food? When you're hungry? For the important dinner with your boyfriend's parents? No.
The best time to learn to cook is when you're not hungry. When the meal is not that important. A lot can go wrong. But the risk is not the most important part of the equation.
Learning something new takes experimentation. It takes time. And it takes a certain amount of leisure. You can't get that leisure when you're under the pressure of an important deadline like a mealtime or because you really need the functionality.
So to answer the question: you should start your personal projects now. Don't wait until you desperately need a job. Take a good look at your career and start building projects that lead that way, on the side, starting now.
4 qualities of a good personal coding project
Remember, your interview er is looking for something to make you stand out. They want to find someone who is unlikely to embarrass them. Here are the things an interviewer is looking for.
- It uses a relevant skill
- It is complete
- It is interesting
- It is realistic
Let's go through these, shall we?
This one is pretty obvious, so I put it first to get it out of the way.
The project should use skills that you will need on the job. You should highlight those skills. For instance, if the job says "SQL skills are required", mention that you use Postgres in your project. Did you have to do anything interesting? Did you use an obscure feature? Did you hand-roll your SQL? For a good reason? Put that in the resume.
Relevant is a key term. It doesn't have to be exactly the same skills. For instance, if they use Apache and you've used nginx, that's probably okay. They're both web servers. Just make sure you could justify the difference.
Starting lots of projects and never finishing them is a bad sign to interviewers. Why didn't you finish? Did you give up when it got tough? Are you disorganized? Do you lack focus? Those are the thoughts that are going to spring to the interviewer's mind. Don't put projects on your resume that don't have some kind of completeness.
Let me be clear: software is never done. But software does get deployed. Does your Twitter bot tweet? Does your weather app show the weather? Does your blog serve pages to the public internet? You're looking for something that shows that it works, it serves a purpose, and you didn't give up.
I've hired people in the past myself. The #1 problem I've encountered with bad employees is that they give up too soon. Sticking to it is especially important for programmers. There are many, many challenges in the life of a software project. Showing that you can carry on is really important. Plus, it can make for some interesting stories to talk about in your interview.
Your best bet for completing the project is to make it small . It's so important, we'll go over that soon.
Remember that the interviewer is tired. They've looked at hundreds of resumes very similar to yours. They've talked to candidates just like you. They want something to help energize them and motivate them to talk to you about your projects. That's why you want to make them interesting.
There are a lot of ways your project could be interesting. One is if it gets really popular. "Developed a library used by 100,000 people". That would be a great line on the resume. Unfortunately, that's not likely to happen. Stay realistic.
Another way is for someone to lend credibility. "Rich Hickey and Jose Valím both personally reviewed the code and publicly praised the craftsmanship." That would be awesome! But also unrealistic.
Your best bet is to go with something whimsical . That will require some explanation, which we'll go over soon.
Your interviewer wants to know that you can solve real world problems. It's all too easy to avoid problems when building a side project. You could avoid writing a GUI by making a terminal app. You can avoid using a database by writing to files. You can avoid making it fast because it's just one user.
Avoiding problems is a useful skill! But so is bravely facing them and overcoming them. Your interviewer might be impressed by your ability to sidestep issues, but they know their customer-facing application needs a GUI. They use a database. And it needs to be fast. Those features, or a list like it, might be non-negotiable. Have you dealt with those kinds of real-world constraints? Show the interviewer you're capable of facing real-world challenges by making your software realistic.
I think an example would help.
Let's say you build an application to catalogue your reptile pet collection. You start easy: it's just a web server you run locally that stores all of its data in-memory. How can you make this more realistic?
- Deploy it on the open web
- Use a database instead of in-memory storage
- Add a user management system
- Talk to a 3rd-party API
All of these things force you to face real-world issues. Luckily, these will also coincide with the skills you would like to showcase.
4 characteristics to bake into your personal projects to maximize success
I have a warning: it's easy to overcomplicate these things. Your goal is to present something finished and deployed. If you're trying to learn a new language, or you want to learn some new aspect of it, by all means work on a project. But don't make it something so vital that you can't afford to mess up. You will struggle and maybe wind up hating the language. The best thing to do is something small and whimsical.
Grand adventures start with a bold, but tiny, first step. Hello, World! Is a good first program for a reason. There's so much to learn at first. The build tool, the command to run it, input + output, so much! At the beginning, getting all of that settled is hard enough without dealing with bugs in your program.
Of course, you'll want something slightly bigger than Hello, World! on the command line. But think for a moment: what's the equivalent of Hello, World! for web apps? What's the equivalent for Twitter Bots? That's what you should build first. Deploying something small is much better than never deploying anything. You can always add to it later if you need to.
The most impressive early works of artists come out of a very free exploration of a medium. Sure, masters can make even ugly colors look beautiful. But let's face it. At the beginning, we're all bad at that. The reason Hello, World! Is so great is that it captures that frivolous spirit of the artist. What could be more unnecessary than a program that says "Hello"?
The whimsy is what lets you produce something, anything, even if it's worthless. Deploying something that works is better than a failed grand vision that doesn't do anything. Whimsy is what lets you change course when you realize your idea won't work. What's something silly that could work? Whimsy avoids boredom and dead ends. It dodges perfectionism and welcomes serendipity. And after the fact, nobody knows what you had planned to do before you started.
3. Familiar +1
Chances are, you're probably aspiring for a job just outside your skillset. You can use your projects to try out the new stuff you'll need for the job. If you still like it, you'll also have proof that you can work with the tech. However, what you don't want is to bite off more than you can chew. Seriously, build something you know how to build, with one extra thing you've never used.
What do I mean? If you are familiar with traditional web apps, build a web app, but in a new language. The familiar is the web app, the +1 is the new language. Or build a web app in a language you know, but with a new database. You don't want the project to fail because you hit too many roadblocks. Remember, you can always add more stuff later. Which brings me to ...
The best place to be is to have a stable, working, deployed project that you can add features to whenever you want to learn a new skill. Maybe you've got a small blog engine that you can add user login to. Or a Re-frame frontend. Or a spellchecker. Or AI categorization. Each of those features is digestible on the weekend. But if you tried to do them all at once, you'd probably never finish. Build your project in pieces. But first, your main goal is to get something small and basic working and deployed.
Okay! With that out of the way, here are ten projects you can keep small and probably do over a weekend. But each can then be a platform for adding to later, if needed. I've also included the skills that each project demonstrates and some possibilities for expansion. Keep in mind that you have a choice for the platform these run on. For instance, your weather app could be a mobile app or a web app.
This is a classic exercise from the early days of the we b. Serve pages out of a database based on the URL.
- Skills: Database, HTTP server, HTML
- Expansion: User login, frontend editing, build an API, search, link analysis
2. Twitter Bot
Build a program that submits new status messages to Twitter.
- Skills: API access (including OAuth), error handling
- Expansion: Generate Markov statuses, use a database of pre-written tweets, timing, respond to other users' messages
3. Weather App
Use the Forecast.io api to display the weather near you.
- Skills: API access
- Expansion: User can interact with weather over time, notify you of bad weather
4. GitHub Notifier
Listen for events from GitHub and notify you.
- Skills: HTTP server (for post hooks)
- Expansion: Rules engine for deciding when to notify you, GUI, database for history
5. TODO App
The classic app keeps track of a list of items and their status.
- Skills: UI work
- Expansion: Backend (api design), database, social sharing, real-time collaboration
6. Twilio Bot
Twilio is an API for text messages and phone calls. Make a bot you can call that will tell a joke.
- Expansion: Connect it to TODO list, Connect to GitHub Notifier, Connect to Weather App
7. Meme generator
Basically, put text onto an image!
- Skills: Graphics, file IO
- Expansion: Preview, submission to social networks, GUI
8. RSS aggregator
Poll RSS feeds for new articles and make a new feed that combines them.
- Skills: XML, database
- Expansion: Frontend (add new feeds, list of article titles), filtering, saving for later, share buttons
9. Food log
Keep track of everything you eat with a simple submission form.
- Skills: Database
- Expansion: Show trends, search, filter by date, database of known foods, calorie counting
10. Google Map
Make a website that shows places on a Google Map.
- Expansion: UI to add/remove places, database for saving places
These are just some projects doable in a weekend. Remember to keep them small and whimsical. If you're serious about your functional career, you're going to do better with some support. Sign up for PurelyFunctional.tv and you'll get step-by-step lessons teaching you the skills you need to build real projects to prove you can ship with Functional Programming.
Many people give up on side projects because of lack of time. The reason? They don't manage their time well. Here are some things to maximize your success.
Carve out one 3-hour block on the weekend. Ask your significant other for uninterrupted time. Make sure the kids can't distract you. Leave the house if you have to. The goal is to feel like you've got the mental space to focus 100% on it and achieve success in those 3 hours.
**Plan out a small, achievable goal for those 3 hours. **During the week, make notes about what you plan to achieve. It needs to be small. You want those three hours to result in something tangible, however insignificant it may seem.
For example, your goal may be to start with the Luminus template and deploy it to the web unmodified using a build pipeline. That may seem insignificant, but many issues can pop up. I've gotten stuck with lost passwords to Heroku, a spotty internet connection, and a typo in a config file. You can waste an hour just on those things. You want the margin of error so you are guaranteed to succeed.
Plan out some small extras you can add if you have time. If you don't finish these, it's okay. It's still a success. But you want to be able to play with your project once you've achieved your objective.
Use the time during the week to guarantee success. It may seem like you don't have time, but you probably do have a few minutes here and there. I'm not saying act frantically and non-stop. We need rest and breaks. What I am saying is if y ou're thinking about your weekend project, you should be focusing on success. Don't dream up all the features you could possibly have. I've done that and it only stresses me out that I'll never finish. Instead, use your time to make your project easier and smaller.
Can you eliminate a risky piece of the puzzle? Do it. Can you double check your Heroku credentials ahead of time? Do you have the tools you need installed? Those things will keep the project front of mind and maximize those three hours you've got blocked off.
Remember: the goal is to have a basic platform for adding features to. You'd be surprised how much you can add to a basic, working product. Once you've got the basic platform working and solid, adding a new feature can be as simple as pulling out your laptop and experimenting. If it works, commit it. Otherwise, oh well! The hardest part is getting all the tools set up.
Okay, once you've got something to show, you've got to present it to the world. I like to host my code on GitHub.
And one great thing about GitHub is that it shows the README file front-and-center when you load the repo. That means you can leverage the README to showcase what makes your project special.
Here's the minimum the README should contain:
- What does the project do?
- Who is the project for?
- Why is it different?
- How do I use it? (installation instructions)
- How does it work?
If you expect someone to read your code, make sure that it's well-formatted and readable. Spend some time renaming functions and consider the reader. What will help them navigate? Where should they start?
In the resume
If you're putting it in your resume, make a new section for Personal Projects. List them similar to how you list your jobs and education. You want one sentence for what it does, a line of technologies that are relevant to the job, and one interesting tidbit. I also like to include a "what I learned" se ntence that lets me highlight me as someone who learns from experience.
For example, here's what I would write for my blog engine I wrote about 7 years ago:
Tiberius - Personal static blog engine Python, Pandoc, Markdown, S3 - 100-line Python script to publish a blog - an exercise in the power of simplicity Taught me to appreciate constraints. Robustness comes from eliminating the unnecessary.
The Personal Projects section needs to go in your resume where it makes the most sense. The most important section should be at the top. If you want to highlight your professional experience, put that at the top. If you want to show your academic achievements, that goes first. But if you think academic and professional are less relevant than your personal projects, move the personal projects to the top.