Career advice, interview tips, and more resources for job seekers. Hired is a career marketplace for the world's knowledge workers. Starting with in-demand tech and sales roles, we’re bringing together job seekers with the companies who want to hire them.
As programmers, we’re heads down coding so much it’s easy to forget about career growth. Feeling unmotivated at work is a sign you’ve put off your career development for too long. Here are five tips to level up your dev career.
Set a career goal
Work late, but not on “work”
Technology changes quickly, and keeping up with changes takes time and effort. As you become comfortable with the technology at your day job, you might not be pressured to learn new technology very often. Usually learning plateaus after working for a year or two at the same company. One way to make up for this is working on personal projects outside of work. This keeps your skills sharp, and shouldn’t feel like work but more exploratory and fun. You might even make some money.
Ask your managers and mentors for advice
Your mentors and managers are invested in your success and they are great career resources. Show them you’re interested in growing when you meet with them. Ask for specific things you could do or improve on at work to get to that next level. If you’re feeling burned out or you’ve hit a learning plateau, find out if switching teams within your company is an option. Good companies will work with you to keep you motivated and growing. Don’t wait until you’re already burnt out, then some of these opportunities may have already passed.
Measure your progress
You can’t improve what you don’t measure. Use tools like WakaTime to measure your programming activity. The “Goals” feature will motivate you to program more in new languages. It also motivates you to spend time wisely by programming on the right projects. WakaTime is a good example of “working late, but not on work”. That’s because I built WakaTime back in 2013 in my spare time after my day job, and it continues to be an invaluable part of my growth as a developer.
Practice interviewing to avoid career stagnation
Practice coding challenges often. Being able to solve programming challenges isn’t always useful, but the habit of solving new problems is very useful. Practicing coding challenges helps you build that skill, and keeps you prepared for new opportunities. If you’re ready to move on, sometimes the fastest way to grow your career is by changing jobs. Changing jobs usually also comes with a significant pay raise, typically by at least 20% in salary. Don’t be too loyal to your current employer at the expense of your learning or career development. You deserve a job that challenges you and takes you to the next level!
With a goal in mind, personal projects to keep your skills sharp, help from mentors, measuring your progress, and keeping your interview skills sharp, you’ll be on the path to that next level in your programming career.
As a software engineer, you may spend most of your time in front of a computer, but you’re still part of a human team. In any team, difficult conversations are inevitable. Whether you are an individual contributor or an engineering manager, you may eventually have to scrutinize your team’s approach to architecting a program, maintaining quality code, addressing a co-worker’s attitude toward a new task, or addressing a personality conflict.
The Importance of Communication at Work
Each of us has our own level of comfort related to difficult conversations, but it’s safe to say that these conversations aren’t easy for anyone. Additionally, bosses who hang up on you, defensive team members, and unreasonable clients can raise anxiety levels related to even a simple conversation. It’s easy to want to avoid difficult conversations at work, but we all know that procrastination won’t help the problem. Luckily, there are some steps you can take to prepare.
Before the Conversation: Maintain a Positive Mindset
Reframe the conversation with a positive outlook. If you expect the discussion to go poorly, it will be clear during the conversation itself. Positive visioning is helpful in any endeavor, and difficult conversations are no different. Before the conversation, think about your ideal outcome. It’s very possible that the conversation will go much better than you initially thought.
Have a flexible idea of what you want to address. You may want to write down your talking points beforehand, but preparing an entire script is unreasonable. It’s unlikely that the conversation will go exactly as planned. A script could create a situation where you are delivering a monologue instead of finding a solution together through dialogue.
Be honest, specific, and diplomatic. It’s important that you tell the truth during the conversation, but it’s equally important that you use language that your counterpart will be receptive to. Being either too blunt or too vague decreases your chances of achieving your desired result.
During the Conversation: Stay Present
No matter how much you prepare, any conversation can throw you some curveballs. Staying present during the conversation can help you pivot your approach, depending on what the other person says:
Listen and slow down. Know yourself as a communicator. Do you tend to talk rapidly without stopping? Slowing down helps you to be more conscious about what you are saying. If you can feel yourself getting defensive or reactive, pause and take a breath.
Use intentional body language. Body language delivers subtle but important messages about how you regard the other party. Crossed arms or a body turned to the other side of the room delivers the message that you’re unwilling to receive what they’re saying. Place both feet on the floor and put your hands on your knees. Face the person you’re talking with. Open body language helps deliver open communication.
Assume good intentions. Sometimes, assuming good intentions is hard, especially if we’ve been burned before. However, people often rise to meet the expectations we have for them and assuming the best (and communicating this through subtle verbal cues) can help us move toward the outcome that we want to achieve.
After the Conversation: What Have You Learned?
No matter how the conversation goes, you will have taken the first step in addressing the problem. Not addressing a challenging issue can eat away at you, affect your productivity at work, and distract you on the evenings and weekends. Whatever you learn—about both your communication strengths and the strengths of your team—will help you as your career moves forward.
A strong communicator is an essential part of any team. With planning, intention, and practice, anyone can improve their communication skills and learn to negotiate conflict gracefully. Have any other tips? We’d love to hear them below!
As a junior developer, you probably feel as if there are endless new technologies, languages, and practices being developed all the time. It can often seem as though the more you learn, the less you know, because of the range and complexity of everything going on in software development today.
It can be tough to figure out how to strike a balance between generalist and specialist, especially as a new developer out of school, a boot camp, or even learning on your own. On the one hand, you don’t want to stretch yourself too thin, but on the other, you want to avoid getting shoehorned into a specific area that can lead you to a learning rut.
No matter where you are in the process, here are a couple of metaphors may help you visualize this balance:
One of the classic models for the relationship between the breadth and the depth of your knowledge is the “T model”. Picture a T, with breadths of knowledge represented as the horizontal top and more in-depth understanding of a specific area as the stalk. This concept has existed in business and skills recruitment generally for decades and can be used to help visualize how you can have some knowledge or skills that cover a wide area with a much more limited area or skill with which you have a much deeper and nuanced understanding.
I recently came across an expansion of this concept with the paint drips example. Imagine a paintbrush full of wet paint is drawn across a vertical wall. There will be a smear across the top, and where there is enough paint, drips will fall down the wall. Whereas in the T Model, there is one area of specialized knowledge represented, in the paint drip example there is a larger area of broad-based knowledge, and over time the paint fills in the areas of deeper understanding.
This visual represents your knowledge base filling in and expanding your general scope of understanding. The T model exists to demonstrate the concept between breadth and depth of knowledge simply; the paintbrush example extends this concept and shows a more realistic representation of what one’s skills look like over the course of a career.
Some Specific Examples
Say you are a junior front-end developer. You have some HTML/CSS/Js skills. You know the basics of a front-end framework or two and can create simple CRUD apps with some polish. You know how to set up a simple hosting option using prebuilt containers to serve your application.
These would be the broad top of your knowledge base. But could you organize a fresh AWS or similar server account to host your application from scratch? Could you explain and rebuild Webpack to run your production build? Since you know some CSS, has this translated into Less or Sass or another CSS preprocessor? These are a couple of areas in which you can start to visualize the broad base of knowledge and the deeper roots of each of the areas.
Annual Learning Challenge
With these mental models established for understanding breadth vs. depth in programming skills, I would propose the following approach: while working and learning on the job, pick one to five areas to dive into for a year. This exploration could be work-related or done through personal projects. Maybe you spend time learning a new trending language or understanding servers and network setup. No matter what you choose, try exploring these new areas while maintaining a balance using these visuals and see where you are in a year.
Getting practice in balancing breadth and depth with software development will better prepare you to learn whatever future skills will be required of you in your career… and most certainly will pay dividends for a long time to come.
Landing your first job is often the hardest. If you’re looking for a role as a junior software engineer, it’s no different. There’s a myth that just because there’s great demand for software engineers in the industry as a whole, employers will hire any Tom, Dick, or Harry who rolls up off the street, freshly out of a coding bootcamp or an undergraduate computer science program. Unfortunately, that’s not the case. Like in most other professions, there is no golden ticket to guaranteeing employment after completing your studies, regardless of what educational route you pursued. Fortunately, there are a few strategies to improve your chances of standing out to employers even when you’re lacking depth in your professional experience.
Evaluate your skill set
Get experience where you can
Beyond having the right skills, you need to show that you can apply them in practice. If you’re struggling to land that first full-time job, consider pursuing an internship or a contract role that will let you put your skills into practice. Both of these strategies not only add to your work experience, but give you an opportunity to build new relationships and expand your professional network. Oftentimes employers hire new grads as interns to evaluate and gauge their skills before determining whether converting them to a full-time employee makes sense for the team. Since getting hired after an internship is not guaranteed, don’t skip out on building relationships with fellow colleagues to build your professional network.
The same goes for a contract position. Large tech companies rely on thousands of contracted workers, who are employed by a separate staffing company, to do a lot of the work strategized by their full-time employees. Being a contract worker at Google or Amazon gives you great exposure to what it’s like in the working world and in the industry as a whole. Alternatively, you can refine and highlight your skills by pursuing freelance work on Upwork, creating your own projects, or contributing to an open-source project on GitHub.
Present yourself in the best way possible
You can never make a first impression twice, and that is especially true in the job search process. As a more junior candidate, you can’t rely on your work experience to speak for itself. Be intentional with how you organize your résumé; focus on highlighting the right skills, and making sure that you’ve had someone else proofread your résumé. Resist the urge to fluff up your résumé or stretch the experiences you do have. Hiring managers are trained to identify candidates who do this, so it’s best to portray yourself accurately. While fleshing out your résumé and career profiles, make sure to avoid these common mistakes. Once that’s done, work on building your career narrative so employers know what you’ve done (in terms of education, work experience, and projects), what you’d like to do, and what skills you have that are needed for the role in question. If you’d like to get further into the nitty-gritty details, fine-tune which types of external links — be it a personal website, blog, or social media — make sense for you to share with potential employers.
Work within the networks you have and beyond
Your professional network, both online and offline, can be more valuable than meets the eye. Your network is made up of individuals with similar interests, values, and may lead to knowledge sharing, friendship, or even an unexpected introduction to a job opportunity. Some of these networks include college alumni groups, fellow bootcamp graduates, coworkers and acquaintances you’ve met doing internship or contract work. If you feel comfortable, ask any individuals who’ve met and worked with in these capacities to connect or even recommend your work on LinkedIn.
Beyond the network you already have, you can expand your professional network by attending tech or developer meetups. Browse sites like Eventbrite, Facebook, or Meetup to find local events that pique your interest. Say you just learned Ruby, you can find nearby Ruby meetups where you can learn from Ruby developers who have used the language for years and get a sense for the roles that may align with your experience. While this might not lead to an explicit job opportunity, you can glean valuable insight into what it takes to get further along in your career and to see if it matches what you’ve established in your career narrative.
Although landing your first software engineering job can feel like an uphill battle, there are strategic steps you can take to truly stand out above the competition. Beyond having the skills required for the job, never underestimate the value of tapping into your network and positioning yourself for success.
You’ve nailed the phone interview with the recruiter and the hiring manager is impressed with your recent projects. The next step? A take-home coding challenge.
This is an excellent way to show off your skills and prove to the team that your code will positively impact their code base and business. No memorizing algorithms or data structures that you never use on the job. Instead, you get to build a cool app or solve a problem similar to one the company may be facing.
This is also a chance to for those who have trouble with live interviews to do what we do best as engineers: build things. If this is a job you’re interested in, you have an opportunity to outshine your competition by going the extra mile.
Take-home assignments are challenging by design, but taking a strategic approach can drastically improve your odds of making it to that next step!
Understand the Challenge
The first step may seem obvious, but in the heat of things, you might find yourself getting caught in the weeds before you even start. Every coding challenge is rooted in some fundamental principles they want you to demonstrate, so take some time up front to truly understand what will be required for the project. A couple of common categories of coding challenges include:
Front-end: Build a data-table that supports sorting, pagination, search, or basic styling.
Full-stack: Create a RESTful API and display the data on a front-end client after being given a CSV, JSON, or ZIP file.
Know Your Limits
It’s important to understand your strengths and be realistic. When I was first breaking into the industry, I received a coding challenge that involved writing a python web crawler to scrape data and database administration work. I’d mostly been working on front-end stacks, so when I read through the challenge, I emailed the company to let them know that this role may not be the best fit.
Don’t be afraid to stretch yourself, but it’s better to be upfront about your limits with yourself and the interviewer. Often times this may lead to adjacent opportunities that are better for your skillset
Ask for Clarification
In the many take-home challenges I’ve received, it’s common for a given task or feature to have a very limited set of instructions and requirements. A previous manager once told me that the best engineers will ask insightful questions and use what that information to write high-quality code.
Don’t be afraid to ask questions or reach out to your point of contact. Whether it be clarification on a feature or a design decision, this signals to them that you’re engaged and will be one to speak up when issues arise at the company.
Manage Time with a Technical Plan
Time estimation is one of the most difficult parts of software development. Even experienced engineers struggle with it. The most common challenge is summed up well by Hofstadter’s Law:
It always takes longer than you expect, even when you take into account Hofstadter’s Law” -Douglas Hofstadter
Projects always take longer than expected, which is why I like to make a technical plan up front and schedule my time for each step. Once I have estimates, I usually multiply them by 1.5x or 2x (if it is a technology I haven’t worked with) and bake in extra time for debugging, refactoring, and code review.
Keep your plan up-to-date as you hit major milestones and consider sharing this with the company. Speak up about trade-offs and blockers that may have come during development.
After the Challenge
After you submit your assignment, be sure to send a follow-up, letting them know you thoroughly enjoyed working on the project. Include your technical plan, design doc, tests, comments, documentation, or anything that shows you went the extra mile. It will also give them a better feel for what it is like working with you.
You could also consider getting together with a friend to practice talking about your project. Common questions that may come up during the next round:
What were the biggest challenges during this project?
Why did you choose X technology over Y technology?
How would you make this scale?
If you had time, what more would you do?
Coding challenges can be a stressful step in the interview process, but following some general best practice guidelines will increase your odds of landing that on-site visit.
If you’re tempted by a product management career but worried about a lack of technical skills, don’t despair, as it’s possible to become a truly great product manager without a technical background. That said, you may need to work harder to prove your worth and gain respect from tech teams in particular, so start with these basics as you work to build credibility as a PM.
Don’t be afraid to ask questions
It’s important to be shameless about asking questions when you don’t understand something—and not to let doing so make you feel stupid. This can be difficult when you’re the only product manager in a room full of engineers, but remember that the alternative is pretending to understand something you don’t—and risking making a mistake based on a lack of knowledge. While it can be daunting to ask questions when you think you’re the only one who doesn’t know the answer, remember the importance of building credibility with your team, which can prove more challenging if they can’t trust that you know what you’re talking about.
Understand technical processes at a high level
While you certainly don’t need to code in order to be successful as a product manager, it can be helpful to have a grasp on how these processes work to more effectively interface between the technical and business sides of the company.
First, you should be able to give general engineering time estimates. The rest of the business won’t likely have an understanding of these timeframes, so being able to quickly deliver a response (to a bug query, for example) without needing to bother an engineer can help to make both business and engineering colleagues happier.
In addition, try to gain an understanding of the company’s system architecture soon after you come on board, as being familiar with the different apps and services can help you more quickly speak the team’s language. Knowing how the various pieces fit together can also make you better-equipped to find the root cause of a bug, which can save precious engineering resources.
Lastly, familiarize yourself with the company’s basic software development process and the time required for each step of the process. After all, your team will be looking to you to manage this process from a timing and personnel perspective, so it’s important to know the various phases and resources required for each.
Take advantage of being a people person
Being a non-technical product manager is a chance to demonstrate the value of soft skills, such as the ability to facilitate processes, build strong teams, and mediate conflict. While engineers can easily get lost in the complexity of their day-to-day work, it’s your job to keep them on track and to remember the big picture—but also to do so with emotional intelligence. While technical team members may not always understand the importance of your role in the moment, don’t let this affect your confidence; When projects are delivered on time and the team is happy with the results, the importance of having a taskmaster won’t be undervalued.
Always be learning
Whether it’s acquiring new technical skills or staying abreast of technological developments, it’s important to continually improve your technical understanding to stay relevant in the product management world. Many non-technical product managers find it useful to learn basic skills such as SQL and HTML, which can help to not only decrease your reliance on engineers for minor technical asks, but also improve your understanding of data architecture and the various elements of web development.
In addition to hard skills, a key piece of being a top product manager is staying on top of what’s happening in the industry, from conversations and trends to technical advancements that impact you and your team’s work. Read tech news and blogs, find some podcasts you enjoy, and attend events or meetups relevant to your industry and/or specialty.
It’s common knowledge that most recruiters and hiring managers spend mere seconds glancing at each resume that comes across their desk, so it can be tempting to jump to the conclusion that having a big brand on your resume is the best way to land a great job. But a brand name isn’t a sure ticket to success, so don’t despair if you don’t have one—and rest assured that there are countless other factors that play an important role in hiring decisions.
Network your way in
In the eyes of companies, brand names act as stamps of approval, lowering the amount of due diligence needed on a candidate as someone else has already done the work. But there are other ways of getting that stamp of approval, including through an employee of the company.
Employee referrals are increasingly important to tech companies, with many of them—both big and small—not even considering candidates who don’t come through a referral or some other trusted third party. Rather than applying cold to a large number of companies, spend your time trying to speak with current employees, as being referred can often fast track your application to the phone interview stage.
Whether being referred by a friend or someone you’ve met recently, be sure to speak with them about your passion for the company and role and walk them through your work experience. You want your referrer to vouch for you if the recruiter or hiring manager asks (as they often do), so give them the tools to do so.
Focus on upward trajectory
While moving up quickly at a big brand can be challenging due to established processes and hierarchy, working at a smaller company can be a chance skip some of the bureaucracy that goes into promotions—and this is a great thing to highlight as you apply for new jobs. In addition, upward moves can act as another type of approval stamp, as they show that someone else valued your work highly.
On your resume, be sure to highlight any promotions and/or changes in title, the associated timeline, and additional responsibilities taken on in each role. Similarly, when you speak about your experience, focus on upward moves and what enabled them, which help to paint the picture of your achievements beyond individual projects or KPIs.
Highlight adaptability, self-motivation
One thing that big brand employees don’t have—or at least can’t provide tangible evidence of—is comfort with ambiguity, as big companies generally move more slowly and operate with more certainty in day-to-day operations. This adaptability, however, is an asset to companies and teams of all sizes, and a unique value that your background can provide—so be sure to give examples that demonstrate as much.
In addition, every company wants to hire employees who will be self-motivated to do their best work, and experience in a less structured environment is a good way to showcase this quality. While employees with highly scrutinized KPIs and a high level of management oversight (as tend to be common in larger companies) may struggle to demonstrate this, success in ambiguous environments is solid evidence of your ability to stay motivated without external pressure.
Consider your goals
If you’re deliberating between a job with a brand name company and one with a smaller player, don’t let the brand be your only deciding factor. While a big name can be beneficial for a number of reasons, a smaller team and company can often be more conducive to reaching specific goals if they offer more flexibility, so take a good look at where you want to be in the future and consider how both opportunities will (or won’t) help to get you there.
If you’re not a fan of conversations with strangers, the phone interview might be your least favorite part of the interview process—but it’s also likely the one you’ll have to experience the most. For better or for worse, phone interviews are also often the first live point of contact you’ll have with a recruiter or hiring manager, so it’s well worth getting over any fears you might have and embracing this quick screen as a way of putting your best foot forward—and a valuable tool for learning more about the company and role.
Your best self in 30 minutes
Love it or hate it, teams use the phone screen to decide whether or not to move forward with a candidate, so performing well—regardless of your technical abilities—is a key piece of landing your next job.
Know your audience
First, take into account who you’re speaking with. While recruiters often take phone screens on behalf of the team, there’s always a chance your first conversation is with the hiring manager—particularly if it’s a smaller company. To tailor your preparation, put yourself in your interviewer’s shoes. If you were a technical recruiter, for example, what would you be hearing from other candidates, and what might urge you to pass one candidate along to the team for further consideration over another? If you were leading a technical team and looking for your next hire, on the other hand, which attributes would you be looking for in potential new team members?
Perfect your story
Regardless of who you’re speaking with, spend time figuring out how you want to tell your professional story. Chances are, the first question in your interview will be related to your experience and background, so it’s worth nailing it and moving on to more interesting things. Practicing telling your story can help you to avoid rambling, and ensures that your key achievements don’t get lost in a long narrative.
Know how you fit
You’ll likely also be asked about your motivations for applying to the company and role, so do your research on both. It can be helpful to pull some key phrases or points from the job description that you can reference as you’re speaking, which both shows that you’re actually interested in the role, and that you’re aware of the challenges ahead if you were to join. In addition, it goes without saying that you should be familiar with the company’s business and products, but go the extra mile by researching recent news and asking relevant questions if the opportunity arises.
Wow them with questions
Lastly, prepare a few impactful, pithy questions before your call, as even the questions are a chance to show your interviewer that you’re interested—and interesting. There is usually only time for one or two enquiries from the candidate’s end, so doing this can help to ensure you don’t resort to generic questions. Try to choose questions that show you’ve done your research, but which can also help you better prepare for further in-person interviews.
After the call
If your interviewer doesn’t give you a clear idea of next steps, a thank you email can be a good way of gently nudging for further information. Use your best judgement as to whether or not to send an email right away, but it’s generally best practice to send a quick thank you note, and usually can’t hurt.
In addition, take some time to reflect on your call—what went well, what didn’t, and what you’d like to improve for the next one. Some interviewers will even give feedback, either on the call or after the fact, which can be even more helpful as you think about how to hone your phone interview skills. Eventually, these quick screens will feel like nothing more than what they really are—brief conversations for both you and the company to evaluate whether it’s worth spending more time together.
Job interviews can be both daunting and challenging—but remember that the interview is just as much a chance for you to evaluate the company as the other way around. And while there is seemingly endless content and advice on acing the interview, the professional world tends to focus less on how to determine whether a role and company is the best fit for your goals and values. One key red flag is when multiple interviewers ask you the same question during an onsite—here we’ll explain why, and what you can do about it.
Clues about communication
Many companies preach transparency and open communication, but these values are difficult to instill in practice. Some experienced candidates can detect these inconsistencies when they interview, and keeping an ear out for duplicative questions can help you do the same. When you interview, receiving the same question can be indicative of a deeper disconnect in communication within the team, as it suggests that they’re not even liaising during the interview process for a new team member—which is arguably one of the most important times for a team to be aligned.
If they’re asking the same generic questions
We all know (and mostly hate) the go-to generic interview questions… greatest strengths and weaknesses, where do you see yourself in five years, etc., and have likely had to answer each one at least once. But if multiple interviewers within the same organization are asking you the same generic questions, this could indicate that they haven’t really prepared for your interview—and should call into question whether they’d value your contributions to the team.
In addition, generic questions can be indicative of poor listening skills, as interviewers who don’t really pay attention to what you’re saying have a harder time asking follow-up questions. If you feel you’re not being heard in your interview—before you even join the team—it’s worth considering whether this would change if you did come on board.
Tailored, but duplicative, questions
If, on the other hand, you’re receiving the same questions that have clearly been tailored to your CV and the role, the team might simply be failing to communicate amongst themselves, which a missed opportunity for them to get a better sense of your qualifications for the role.
Best practices for on-sites dictate that each interviewer should have a specific focus area, or something to drill into which can give the team a more holistic view of how you would fit. Failing to do this could either point to poor planning, or simply the team’s lack of experience with hiring. In smaller startups, this may be exacerbated, particularly if there is not yet an HR or recruiting function—so keep in mind the context as you evaluate your interview experience.
How to address your concerns
To be sure, receiving duplicate questions probably won’t make or break your decision whether or not to join a company, but might be a trigger for you to raise additional questions about the culture and team dynamics. Rather than asking broad cultural questions, which leave room for your interviewers to improvise, try to get granular about your concerns—ask about meeting culture, team communication, and feedback processes, or whatever else you’ve found to be important in your past professional experience.
In addition, it might be a good idea to do some due diligence for external insights into the company’s culture, or even details about the team members you’ll be working closely with. Tap your network for connections who know people at the company to see if you can get some firsthand insights into the personalities and working styles of your potential new colleagues. After all, regardless of how exciting the company and product are, your happiness in a new role will likely largely be determined by your relationships with your team and other collaborators, so it’s worth taking seriously any concerns you have about the culture.
Unlike other industries, tech can be seen as a playground for the young. Companies have filled their offices with ping pong tables, ball pits, and slides to attract fresh college grads toting computer science degrees. This obsession with youth is depicted on HBO’s Silicon Valley. Week after week, the twenty- and thirty-something software engineers under Richard Hendricks’ leadership try to make Pied Piper a success (or at least not a complete failure). Likewise, in one episode, Gavin Belson, the Founder and CEO of Hooli, injects himself with the blood of a young, athletic “blood boy” in an attempt to extend his longevity. Fortunately for software engineers who have been working in the industry for a while, it is very much possible to leverage your decades of work experience without having to partake in elective blood transfusions. In this piece, I will share three ways an experienced software engineer can stay relevant as a job candidate in a competitive job market.
Highlight the valuable skills you already have
Contrary to how software engineers are idealized in certain contexts, many employers would rather hire an expert in the field than spend time and money training someone much less experienced. Companies of all sizes, particularly large corporations like Amazon and Google, are always in need of software engineers who are Java experts. This is actually an area where young college grads are at a disadvantage. These companies would rather hire a candidate with at least 5 years of core Java experience over more junior software engineers, who haven’t had exposure to the language in a professional capacity.
If you’re positioning yourself as an expert in Java, for example, make sure you brush up on the basics to show your full breadth of knowledge. Next, make your Java experience stand out on your résumé, LinkedIn, or Hired profile in the skills and work experience sections. In the skills sections, list your skills in order of proficiency with Java at the beginning if applicable. List all the languages and tools you’ve used, your workflows, and achievements in each position in the work experience sections. Since companies often use hiring software that detects certain keywords, a candidate who mentions the languages they’re looking for more frequently may have better luck getting to the next stage of the application process.
Consider leadership roles
If you’ve worked as an individual contributor for a while, you may want to consider taking on a leadership role as a team lead or engineering manager. Generally, a team lead reports to an engineering manager and provides guidance for the other engineers on the team. An engineering manager has often shown experience leading others, has multiple engineers reporting to them, and can provide technical guidance as needed.
If you’ve shown an affinity towards leading and managing others, modify your résumé and career profiles accordingly and start looking at open roles. If you’ve had several roles at the same company, think about separating and fleshing out each role as a distinct item in your work experience. Hiring managers like to see a candidate’s progression from being a Software Engineer to a Lead Software Engineer or an Engineering Manager, as well as the responsibilities that accompany said roles.
Learn new tech stacks
Although it can seem like companies reward the young and inexperienced, it’s best not to assume you know what companies are looking for as there’s a right job for every skill set. Make sure you are positioning yourself with your best foot forward by understanding how your expertise aligns with a job opening. Remember that adaptability and being open to new opportunities are the best way to continue growing your career while leveraging your current experience. the keys