Chapter 17

Ten Job Search Strategies

In This Chapter

arrow Publish your code

arrow Blog regularly

arrow Learn new technologies

arrow Update and refresh your resume

arrow Review your public information

arrow Attend hackathons

arrow Teach yourself a popular API

arrow Build and release something people want

arrow Consult to fix a painful problem

arrow Do a trial engagement

Finding a job in any industry has always required time and effort. However, the strategies used to find a job have changed. The way your parents went job hunting or even the way you did a few years ago is likely outdated today. It has never been easier to publish information about yourself, and successful candidates are writing more about themselves more frequently than ever before.

The strategies listed in this chapter go beyond sending a resume and cover letter to a job site or an email address and hoping for the best. No strategy is a silver bullet, but one or a combination of these could help you get noticed for your next job.

Publish Your Code

As someone who has just learned how to code, you may feel embarrassed or self-conscious about your programs. Maybe you designed a website for a small business and the code is messy, with pages not appearing correctly on certain browsers. Or perhaps you wrote a data analytics program with many temporary variables and not as well documented as it could be. Resist the urge to keep your files on your hard drive, and instead publish your code to GitHub (or Bitbucket) for others to use and share.

Following are a few reasons why you should post your code:

  • Show off your skills. Instead of asking about your previous job or where you went to school, employers ask what you’ve built recently and check your Github account.
  • Work with others. The latest project you are working on might be too difficult to finish by yourself. The easiest way to invite others to help with your work and keep your project going is to publicly post it.
  • Elevate your profile. Other coders might reuse your code in their own projects, especially if your code is open source. For example, Bootstrap was created by two Twitter developers to make creating the front-end for websites easier. Shortly after they posted the project to Github, it became the most popular project on the site.

GitHub already hosts appointment reminders apps, code editors, and cat photo web scrapers, so whatever you’ve built will have plenty of company.

Blog Regularly

Coding involves setup, installation, and debugging. Perhaps you spent two hours trying to add credit card purchases to your website, despite following the credit card processor installation instructions to the letter. Or maybe you tried but failed to add user logins with Facebook or Twitter.

If you followed instructions but the service, integration, API, or app doesn’t work, you may have found a bug or you may be doing something wrong but don’t know it yet. Documenting your experience helps others who are having the same issue, and also shows potential employers how you solved a real problem. Employers want to understand your thought process — because you could soon find yourself troubleshooting their servers at 2 in the morning, and keeping calm under pressure and methodically working towards a solution are important traits to have. Additionally, employers value employees who stay abreast of the latest changes in the industry and incorporate them into their work.

You don’t need to document only when things go wrong — you can also blog about when things go as planned. Many companies encourage individual engineers to blog about how they solved technical challenges. For example, Netflix engineers have written on the company blog (techblog.netflix.com) about the algorithms to personalize the video titles shown to you. This might sound easy at first, but remember that each personalized page will look different depending on the member and the size of the device being used to access Netflix.

tip Don’t feel as though everything you write must be novel or some crazy solution no one has ever seen before. Jennifer Dewalt is a designer who decided to learn to code by building 180 apps in 180 days and documenting the experience on her blog (www.jenniferdewalt.com). Her blog posts went viral, resulting in an invitation to speak at the TED conference and a job with Wit.ai, a Facebook subsidiary.

Learn New Technologies

Programming languages are tools and are constantly being improved. Every week a programmer makes a library faster or creates an easier way to code a common task. Less frequently, programmers release a new programming language. It’s hard to know ahead of time which of these new libraries, languages, or frameworks will become popular, but when something catches on, it can spread quickly. For example, Rails, the popular web-programming framework, was released in mid 2004, and by late 2006 Apple announced it would be included standard as part of the Mac operating system.

Many developers commit to learning something new to stay current despite all this change. Learning a new language or library shows employers that you’re willing to put in the effort to improve your skills. Companies often have custom code written in a language no one knows — a relic from a former employee. Someone on the team has to figure out what the code does and how to maintain it.

After you’ve learned the basics, here are some cutting-edge libraries, languages, and frameworks to add to your list to learn:

  • React: A JavaScript library developed by Facebook for creating user interfaces that are constantly being refreshed with new information, such as the Facebook news feed.
  • SASS: A language that helps you quickly and easily create CSS files, which control a website’s appearance.
  • Swift: A mobile programming language created by Apple, released in 2014, and meant to replace Objective-C, the traditional language used to code iOS apps. Swift is new but rapidly increasing in popularity.
  • Sinatra: Unrelated to the famous singer, this lightweight Ruby framework is meant for simple websites. It is not as well known as Rails, a popular Ruby framework, but is still used by companies such as Apple, LinkedIn, and the BBC.

Update and Refresh Your Resume

Many job seekers are advised to use active verbs, avoid too many acronyms, and include your latest employer when writing a resume. Although these tips are important, it’s far more important to make sure that you include lots of description for each position.

Whether using an internal resume database or an external resource such as LinkedIn, recruiters and HR professionals use keywords to search and sift through candidates. For example, if a company uses Python to create software and a recruiter needs to find more engineers, the first search is likely for developers who know Python. If you don’t list Python anywhere in your profile, your resume might never be seen.

Because you’re just starting to learn programming, use side projects to show your experience with a programming language. After your project is live and running, include on your resume and on LinkedIn a short description of the project, the languages used, and your contribution.

tip If you’re unsure of a phrase in your resume, or you’re debating between two ways to say the same thing, use Google for each phrase and choose the one that is more popular.

Review Your Public Information

There is no shortage of public information about you. In addition to what you post on the Internet, there is also information others post about you. Personal websites such as a blog or a home page, and social networks including LinkedIn, Facebook, Twitter, Instagram, and Pinterest all paint a portrait of who you are.

Prospective employers can find information about you manually by using a search engine, such as Google. Or they can use a service such as Rapportive and FullContact to find and link all your online profiles to one email address. Now it’s easier than ever for employers to find almost everything about you with just a few clicks.

Many personal websites and social networks used to be just for your friends. However, recent privacy changes mean that unless you specifically exclude people, almost anyone can view your content — and employers do pay attention. Almost 80 percent of employers research candidates and look beyond just the resume, so here are common themes to avoid in your online personas:

  • Alcohol: Many people take pictures during social events, but if every picture on Facebook or Twitter shows you holding an alcoholic beverage, it will definitely send the wrong message. Pictures are a great way to show your interests, so make sure to show some diversity.
  • Profanity or violence: Avoid profane language in status messages or comments. While you may be talking to a good friend or responding to a sports game, a prospective employer will not have the time or desire to understand the context.

    tip Check code you’ve submitted to any code repositories such as GitHub or Bitbucket for inappropriate variable names or language.

  • Inappropriate attire: Photos should show you wearing clothes you could wear in an office. Email providers such as Gmail automatically associate your profile picture with emails you send, so form a good first impression when contacting prospective employers.

    tip Avoid swimwear photos in your profile photo, and increase the privacy setting of any beach or pool photo albums so that the general public cannot view them.

Attend Hackathons

Hackathons are events where developers gather to work on an idea from start to finish over a short time frame, typically 24 hours or a weekend. See Figure 17-1. Hackathon are usually organized by a school, a company, or an independent group, such as a Meetup interest group.

image

Photo courtesy of HackNY.org and @matylda on Flickr

Figure 17-1: HackNY hackathon brings students together to work on NYC startups’ APIs.

tip TechCrunch, a technology blog, hosts a popular hackathon called Disrupt, where companies have been founded and gone on to become fully funded companies. For example, GroupMe was created at TechCrunch Disrupt, and was eventually acquired by Skype for $85 million. Another popular hackathon, PennApps, is hosted by the University of Pennsylvania. TechCrunch Disrupt and PennApps have each had over 1,000 participants at their latest hackathons.

Developers typically attend hackathons to meet other people, learn a new technology, or win a prize, which are given to the top app as decided by attendees or a panel of judges. Prizes can include free products, up to $5,000 in cash, and credits for hosting services. In addition, hackathons sponsored by companies have information sessions on how to use their APIs, with company developers on site to troubleshoot problems you might have.

For companies, these events are a chance to spark new ideas for existing products. For example, hackathons at Facebook have resulted in the Like button, photo filters, and tagging people in comments. If you are a developer, even one who has just started learning, hackathons can be a low-pressure way to meet representatives from companies, build another project to add to your portfolio, and generally show your passion for coding and building applications.

tip To search for upcoming hackathons in your area, visit these sites: hackathon.io , hackerleague.org , or eventbrite.com .

Teach Yourself a Popular API

Companies build and promote APIs to help expand use of their products by making private programs and code available for public use. For example, Uber has an API to allow anyone to integrate car service into an app. Developers have created or proposed apps that tell users how far to walk to avoid surge pricing, and how to integrate air fare bookings with car service to and from your hotel.

Companies have a fixed number of employees who work as developers on their core products. APIs leverage external developers’ time and ideas to create interesting products the company just doesn’t have time to build or support. Learning an API shows that you are interested in the core technology and have ideas for new product directions.

Additionally, learning a popular API is useful not only to the company that makes it but also to everyone who uses it. For example, Google has a Maps API used by many companies to plot points on a map and show directions. In addition to the Google Maps API, here are some other popular APIs for you to learn:

  • Facebook: The Facebook Login API is one of the most popular in the world, allowing users to skip creating an account and use their existing Facebook credentials to log into your website or app.
  • Stripe: Accepting online credit card payments is a common development task that used to be difficult, requiring bank registration and approvals. The Stripe API simplifies the payments process, and makes it much easier to accept payments from domestic and international customers.
  • Twilio: Sometimes your users need to connect with a human before completing an action or a transaction. The Twilio API allows programs to send and receive SMS and voice calls between users.
  • Foursquare: Any app connecting users to local services has to look up the businesses providing those services. Foursquare is a crowd-sourced database that allows you to find address and review information for almost any business or place in the world.

Build and Release Something People Want

Many companies ask about the apps you’ve built recently, in addition to or sometimes instead of requesting a resume. The best way to show that you know how to build an app that can handle real users is to do it. And if your app becomes popular, it will attract potential employers.

Deciding what to build can be difficult. Instead of brainstorming ideas you think will be popular, build something you would use and can build in a weekend. Here are some ideas that have been built into apps:

  • IsUp.me (www.isup.me): You can enter the URL of a website you cannot access, and see whether the website is down or whether you are experiencing problems with your Internet connection.
  • NomadList (https://nomadlist.com): Displays a ranking of fifty best cities for remote workers based on weather, Internet availability, cost of living, and safety, as shown in Figure 17-2.
  • FollowUpThen (www.followupthen.com): When sending an email, you can add a cc or bcc email address (for example, [email protected] ) to receive a reminder to follow up.
image

Figure 17-2: NomadList ranks cities for remote workers across multiple criteria.

While you can’t predict what will become popular, some of the simplest websites can gain traction quickly. In the case of NomadList, over the span of two weeks the site received 110,000 users, 2,000 tweets, and coverage in over 20 media outlets. The site developer also wrote a blog post detailing how he created NomadList, making it easy for anyone, including prospective employers, to learn more.

tip After you build your website or app, post it on HackerNews, available at news.ycombinator.com , or Product Hunt, available at www.producthunt.com. These two websites have large audiences that frequently sign up and try new websites and apps.

Consult to Fix a Painful Problem

People repeatedly face many painful problems. As coder, you can often consult on a part-time basis to assist with these problems and gain useful experience. You’ll be paid to learn, and sometimes these smaller tasks can lead to a permanent job.

In web development, businesses use WordPress to quickly and easily create a web presence. However, many users creating a site for the first time experience problems customizing the look and feel of the site — perhaps images don’t align properly, text input fields are not big enough, or the site appears correctly on desktops but renders incorrectly on mobile devices. These tasks all likely require CSS modifications, which are often just out of reach for the nontechnical user.

For data analysis, gathering and cleaning data is often one of the most time-consuming tasks in the entire process. For example, the nontechnical user compiling a list of sales leads often has to look up businesses contact information from an online directory and manually copy and paste this information into a spreadsheet. After copying, the data has to be standardized, especially if multiple databases were used. These initial steps can be automated with a script in Python or Ruby, and much of the information scraped and standardized automatically.

Both these tasks are not glamorous, but they do provide a good opportunity to practice your coding skills. You can usually find short projects like these offered for $50 to $500 on the following contractor websites:

  • oDesk (www.odesk.com): Sign up to be a contractor, bid on jobs that people have posted, and take coding certification tests to show your knowledge.
  • Freelancer (www.freelancer.com): Similar to oDesk, Freelancer matches clients with short-term assistance. You can participate in contests with others where a prize is awarded to a winner, or work on a project basis for a fixed price or an hourly fee.
  • CodersClan (www.codersclan.net): Designed for quick, small coding tasks, the average CodersClan challenge was solved in 30 minutes and received a $50 reward.

Do a Trial Engagement

The two biggest questions an employer has about you are “Can you do the work?” and “Will you fit in with the team?” The interview process can help evaluate and answer the first question but not the second.

One way to lower the risk for yourself and a potential employer is to offer to do a trial engagement with the company. These test drives are usually two to six weeks and are more common among startups, where teams are small and attrition is a concern. Although the engagement is temporary, you should not expect to work for free, though the rates may be lower than if the company hired a consultant. For example, at Automattic, the creators of the blogging platform WordPress, all hires go through a trial period and are paid $25 an hour.

The key to a successful trial engagement is to have a discrete task to work on that can be evaluated at the end of the trial. Because of the short time frame, choose projects that are not too complex and depend on input from six or fewer people. Additionally, you should make sure to set up milestones throughout the trial period and regularly check in with one point person, so you receive feedback frequently and can correct the project’s direction if necessary.

Remember that while the company is evaluating you, you should evaluate the company. Try to get a sense of the following:

  • Team: To make sure you mesh well with the team, spend some time getting to know people outside work. You should be able to get a general sense of whether people are happy and whether any major concerns are under the surface.
  • Company trajectory: During the interview, you likely heard the best version of the company story. Now that you have more access, try to understand how the company is doing overall, and whether any major events over the next year could affect the company, such as a renewal of a big client account or major fundraising for the company.
  • Advancement: The interview likely gave you a good sense for the role you would be doing. Now try to understand how others around you have advanced, what made them successful, and what the path for advancement looks like.

warning Before beginning a trial period, you most likely will have to sign an independent contractor form. Make sure your contract does not have a non-compete clause. If it does, check that the clause is limited to a few weeks or months at most. In case things do not work out with the current employer, you should be able to seek work with other employers in the industry.

tip In addition to reaching out to companies directly, you can also use an IT recruiting firm to help match you to a company. In return for a successful placement, these companies receive a fee, usually 15 to 20 percent of a candidate’s total annual salary.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.191.152.17