Our Blog

7 Best Tools for Software Developers

Freelance developers need to stay sharp to be competitive in the job market. In addition to seeking out professional development opportunities, software developers need to know how to use the latest IDE, coding, and communication tools to be able to easily integrate into teams. Here are the best tools for software developers so far in 2020.

Visual Studio Code

Free, open-source, and flexible, there’s a reason why Visual Studio Code is many developer’s favorite tool. This code editor lets software developers build and debug web and cloud applications easily. The tool’s IntelliSense function suggests completions based on variable types, function definitions, and imported modules to speed up the process of coding with fewer errors. Git commands are also integrated right into the editor to make it easy to review diffs, stage files, and make commits. Add in your own extensions to conform the platform to whatever the project you’re working on requires.

Postman

Postman is a collaboration platform for API development that’s used by 10 million developers. Postman’s popularity arises from how easy it is to work on building an API in a team – the platform streamlines the entire process with automated testing, documentation, performance monitoring, and more. Postman is used by more than 500,000 companies for developer onboarding, exploratory testing, application development, and more.

Sublime Text

Sublime Text is a text editor available for Mac, Windows, and Linux. Its “goto” commands make it easy to move around your code and quickly make edits; their overall “command palette” stands out for its ability to edit large pieces of code efficiently: “With just a few keystrokes, you can search for what you want, without ever having to navigate through the menus or remember obscure key bindings.” As one coding reviewer testifies, “If you explore it, you will eventually see how beautifully its powerful features are hidden behind a simple and elegant interface.”

Oh My ZSH

ZSH, or Z Shell, is an upgrade from the Bourne Shell (SH) with new features and support for plugins and themes. ZSH is very customizable, which might explain why more developers are abandoning Bash for ZSH. If you’re interested in getting started with ZSH, then Oh My ZSH might be just the tool you’re looking for. It’s an open-source, community-driven tool for managing ZSH configurations. Fans of ZSH say it makes developers drastically more productive and can reduce time spent on manual tasks.

Codewars

Codewars is a fun way to flex your skills and make sure you’re keeping your skills sharp. Simply choose the language (there are 20 to choose from and many more in beta) and then join a kata, or a community-created challenge that helps you strengthen a specific skill. The kata get more challenging the further you go, and as you progress you’ll be faced with harder challenges to really test your skillset.

Axosoft

This is a great one for freelancers to learn before being placed at a company. Axosoft is a Scrum software for engineering and dev teams that helps with project management and issue tracking. Teams coordinate better using the platform’s built-in bug tracking, reporting, data visualization, and more. Axosoft includes ticketing from emails to make it easy to take a customer concern and run it through your team without missing any details.

GitHub

No list would be complete without mentioning GitHub. A community that’s 40 million developers strong, this platform is the proverbial watering hole for anyone seeking to host and review code, manage projects, and build software. The flexible platform is used by 2.1 million businesses – and recruiters will check your GitHub profile to see if you’re active and to see if your skills match a role they’re trying to fill. Freelancers can ask for advice and find a mentor in the GitHub community, as well as participate in boot camps and online courses.

How to Make the Switch From Full-time to Freelance

The freelancer economy is growing, and software development is one career path that’s particularly remote-friendly and freelance-friendly. Forbes estimates that by the end of 2020, 50% of the U.S. workforce will be freelancers. Freelancing, or contract work, offers greater flexibility and autonomy, but with a learning curve – setting up a successful freelance developer business takes time. Here’s how to get started making the switch from full-time to freelance.

Find an agency or go it alone?

The hardest part of getting started as a freelancer is finding your first client. There are two main ways to do this: by listing your profile on a freelancer site, or by working with a firm that connects professional developers and programmers with companies offering contract positions.

If you want to work independently, vet clients yourself, and be completely autonomous, then going it alone is your best bet. You’ll likely have a harder time establishing your reputation, but as you complete projects successfully you’ll build a freelance portfolio that’s completely your own. Here are a few sites where you can list your services and find your first clients: 

  • Github Jobs
  • Stack Overflow
  • Coding Ninjas
  • Upwork
  • FlexJobs
  • YouTeam

If you want some help getting your name out there, work with an agency that can guarantee your work product. Companies like working with a partner like JetCake because freelancers go through a vetting and training process to verify their abilities. Try working with any of these companies to get a foothold in the freelance marketplace. 

  • Jetcake
  • Toptal
  • Index

These companies will connect you with great companies, but will also require you to perform a skills evaluation to gain access to their network.

Set up your portfolio

The key to getting discovered and hired is showcasing what work you can do. Set up a developer portfolio – it can be as simple as a GitHub page or simple landing page that has your contact details, services, and experience.

Keep your portfolio as straightforward as possible: share code, talk about a project you worked on, and link to your social media profiles or Medium page to provide even more context. If you’re a student, or someone new to coding with not a lot to show yet, get testimonials from your professors or mentors. Ask for recommendations referencing your soft skills to show how you’ll be able to easily slot into a project and hit the ground running.

Decide on your rates

Translating your full-time salary into a freelancer rate is one of the hardest parts of the transition. There are many factors to consider, including your years of experience and level of expertise; the types of projects you’re willing to take on; and your living/business expenses you will need to cover, such as benefits and overhead costs. Entry-level coders will have to build experience to command high rates. But, if you have a particularly niche skillset, you can ask for more, since you won’t be competing with as many other developers for work. If you’re not sure where to start, have a look at Codementor’s freelance developer rate calculator and check out our post on how to set rates as a freelance developer.

Take gradual steps

The experts at Codementor suggest transitioning gradually from full-time to freelance. As tempting as it may be to quit your job cold-turkey, freelancing won’t lead to stable income right away.

If you have the time (and energy), try to pick up freelancing work in your free time. “If you go this route the idea is to transition to freelancing by gradually reducing the days that you work at your full-time salaried job. If this isn’t possible then you might consider saving up three months of your salary and using that as a runway to launch your freelancing career, tiding you over while you assemble your first batch of clients,” writes Codementor.

Some developers negotiate part-time roles with their current jobs before making the shift to freelancing. See if your existing company would be opening to letting you move to a contract basis – they might go for it, especially if it means they still get to rely on your ability. 

Invest in professional development

Finally, freelancers often miss out on the professional development and mentorship opportunities that come with full-time roles. It’s incumbent on the freelance developer to seek out additional training and networking – especially if you want to stay competitive in the freelancer marketplace. Develop a plan for how you will stay sharp in the programming languages you already know, or how you will add new developer skills to your tool kit. Of course, if you work with an agency like JetCake or Toptal, they will offer access to their network of developers who can provide you with advice as you go. Take full advantage of every opportunity that comes your way!

4 Trends From CES That Developers Need to Know

The annual Consumer Electronics Show is always a celebration of the most cutting-edge, futuristic designs and products that startups and big brands have been developing. While many of the products are interesting for their novelty factor, there are always a few trends that emerge that software developers, programmers, and tech leaders need to know.

CES 2020 provides a good indication of where product development, tech innovation, and design will evolve in the year to come. Freelance developers who are looking to future-proof their skillset can take note of these trends emerging from CES to learn a new coding language, shore up their UX/UI credentials, or branch out in an entirely new area of expertise. Here are our big takeaways from CES 2020 for developers.

AI, 8K, and 5G are becoming the norm

As one analyst at The Verge noted, artificial intelligence, 8K resolution, and 5G data used to be the hottest buzzwords in the tech industry. This year, there’s a little less excitement surrounding these three features. “Companies still insist on mentioning AI in their press releases, but don’t wait for you to ooh and ahh anymore. We all know it’s just another way of saying ‘computer models do it’ and with a few exceptions (like Neon), nobody is pretending otherwise,” writes The Verge.

That’s not to say that companies aren’t incorporating AI and 5G into their products. Even industrial tractor company John Deere has been positioning itself as an AI and data company. That consumer electronics include AI and are compatible with 5G has become a given, rather than a novelty. It’s no surprise that machine learning is one of the most in-demand skills for developers this year.

Consumer privacy concerns clashed convenience

There were plenty of new products designed to be both inclusive and invisible, meaning voice and vision-activated technology took center stage. For instance, the OrCam Hear camera uses a Bluetooth headset linked with AI so the user can see who is talking and boost the frequency so that the hearing-impaired can use the headset reliably. However, these technologies collect a vast amount of data in the process.

“Not just your face, your voice, your body, even your sex life is being tracked and monitored by massive technology firms, which means that something we’ve always said in the BizTech world forever, consumers are now experiencing this balance, this trade-off, between convenience on the one hand, and security and privacy on the other hand,” CBS News’ Dan Patterson told TechRepublic.

What does this mean for developers? Two things: first, that privacy concerns will lead to a greater demand for cybersecurity expertise. And second, with all the data being collected by consumer electronics companies, there will be a demand for talent to organize and analyze it. Developers will need to be up to date with the best cybersecurity practices and ways for storing, sorting, and using big data.

Design is getting more subtle

Forget the flashy world of the Jetsons: today’s technology is all about subtlety. The technology showcased at CES showed that products of the future are “becoming less obtrusive, more subtle and blending into the environment in more natural ways.”

Coders and developers are going to re-think the customer experience as design changes how the user will interact with a piece of technology. Two consumer tech companies introduced smart surfaces made of plastic, metal, wood and other materials. Sound-wave technology takes user commands outside the traditional home-button UX. “Pressing and holding one spot could activate a power button. Sliding your finger up and down one side can change the volume. Squeezing the phone can take a selfie. Running your index finger down the back of the phone could act like a scroll wheel,” describes CNET.

Mobile developers and front end programmers need to consider how this outside-the-box UI will change their approach to creating a great in-app experience. Use your freelancer portfolio to show how your code is flexible, customizable, and able to evolve with whatever screen, material, and shape an app is delivered.

Consumer tech is infiltrating the workplace

CES tech from 2020 is likely to quickly make it from consumer homes to our offices. The challenge for developers will be to bridge the gap in software from entertainment to business. “Whether it’s smart TVs in our conference rooms, new laptops, tablets, or foldable phones that might be perfect for mobile workers, voice-enabled apps used by our sales teams, or AI-driven health tech designed to improve employee wellness, CES is the perfect place to see a lot of the consumer tech that will eventually make its way into our workplaces,” write the experts at ZDNET. We predict software developers and programmers will be tasked with designing programs optimized for tech tools with built-in automation, high resolution, and data capabilities.

Should You Enroll in a Programming Boot Camp?

Looking for some career development in 2020? Programmers seeking to expand their skills in one of the most in-demand skills often consider enrolling in a crash course boot camp. These programs, however, can be costly and time-consuming. Boot camps can be between 40 and 100 hours of constant coding; for freelancers, that’s a lot of time away from client work. Here are the pros and cons of enrolling in a programming boot camp.

Pro: boot camps are more affordable than university classes

To be clear, boot camps aren’t inexpensive. Here are what some popular coding boot camps will cost: 

  • Dev Bootcamp: $14,000
  • Hack Reactor: $17,780
  • Application Academy: $5,000

Prepare to spend $10,000 to $20,000 total for a coding boot camp. That’s a pretty high price tag, but not when you compare a boot camp enrollment to tuition at a university. A traditional computer science degree falls anywhere between $20,000 to $60,000+ per year – and that’s not including living expenses, textbooks, and the fact that you’ll likely be out of the job market (and not earning a full-time wage) while attending classes.

Additionally, coding camps can give you experience in areas that are in-demand but not offered at university computer science programs. Hackerrank’s 2019 Developer Skills Report found that 73% of developers knew JavaScript – making it the most well-known language. Yet, university computer science programs don’t teach JavaScript. If you’re seeking to improve your skills, a boot camp can offer expertise in areas that a traditional education doesn’t.

Con: boot camps only offer basic training

Given the concentrated amount of time a boot camp has to teach you new skills, most programs focus on practical, actionable knowledge. As one attendee describes, “a lot of boot camps focus on specific languages or tech stacks without really focusing on the core fundamentals of what’s happening. The ‘rules’ for coding are the same regardless of what language you write in, and more focus should be put on the theoretical aspects of software.”

Expect a boot camp to give you limited instruction in a particular subject area. If you enter a boot camp as a beginner, you’ll leave a slightly less beginner; boot camps don’t necessarily give you all the tools you need to enter the job market. Of course, if you have experience in the coding world, and are simply seeking to pick up a new skill, this disadvantage won’t matter as much.

Pro: get accelerated learning of coding skills

“Coding camps range from two to six months. If you’re a person with big obligations, whether that’s a family, a full-time job, or any other commitment, a coding boot camp will likely better suit your lifestyle,” writes one expert.

The benefit of attending a boot camp is that you are forced to set aside time to exclusively focus on developing your skills. Freelancers juggle competing priorities on a regular basis: client work, business development, networking, and managing their business. Personal projects and professional development tend to take a backseat as a result. A developer on Hackernoon reports that, in his experience, boot camps demand all your time and attention. If you enroll in a three-month program, it’s likely you will spend 80 hours a week on assignments. It’s a great, intense, immersive experience for those seeking to quickly pivot in their career.

Con: it’s hard to discern the quality of instruction

There are more than 90 coding boot camps currently being offered in the US – all with varying degrees of credibility. For someone just starting out in programming or software development, it’s difficult to know what skills you need and what the quality of the instruction will be.  “It’s not hard to find a litany of bad bootcamp experiences online. You can find plenty of positive reviews as well, on sites such as Course Report, but people considering bootcamps may not hear as much about negative experiences,” reports TechBeacon.

It’s critical to do your research on a coding boot camp, as well as to be crystal clear on what you’re seeking. What language do you want to learn, and what are your goals following the boot camp? What are you willing to pay and how much time can you dedicate to learning? And, lastly, what’s your learning style – do you need to be in a classroom setting? Can you take an online course?

One final word of caution: many boot camps sell access to their alumni network as a perk of completing their program. This can be misleading, as many boot camps hire graduates as instructors. In practice, boot camp attendees aren’t getting access to job opportunities so much as they are getting poor instruction from teachers who were in their seats six months prior. Instead, look for a recruitment partner like JetCake who can connect you with ongoing support as you further your career.

Not sure if a coding boot camp is right for you? Talk to the experts at JetCake about our coaching and job placement program.

What Goes Into a Freelance Developer Portfolio?

“Nearly one-third of all online freelancers are software developers,” reported Hackernoon in July, 2019. Developers are one of the most in-demand professionals in the so-called gig economy, and the demand for web development talent is only growing.

As more and more developers consider switching from full-time to freelance, it becomes imperative to stand out from the crowd. Building a great freelance developer portfolio is one of the first steps to organizing your work experience and getting hired. Here’s what you need to know about building a great developer portfolio.

Be explicit about your skills

Even if you aren’t a front-end developer or web designer, your portfolio must be able to convey the work you’ve done and the skills you have. Be explicit in what you bring to the table. Instead of saying “I write code” list out the languages you use. “Don’t be afraid to get a bit technical here,” writes Skillcrush. “People who don’t know what you’re talking about will probably just be impressed, and people who do will appreciate knowing upfront what you can and can’t do.” Listing your specific areas of expertise can help recruiters who are doing a simple Google search find your site. Add keywords like Ruby on Rails, Python, or JavaScript.

Give your information upfront

Recruiters don’t spend a lot of time reading resumes. The average recruiter will spend 10-15 seconds reviewing your portfolio. Make sure in those 10 seconds, you’re giving them the information they need right away. Your name, contact details, and key skills should be the first thing a visitor sees. Keep the design straightforward and simple: “It’s much better to have an elegant landing page with a few key sections (ex. Showcase section, a Project section, an About page, and a Contact page) than a 10–15 page site with various articles and other tangential content,” writes one expert.

Showcase your personal projects

If you have personal projects you can share, do so – show a sample of your source code so a potential employer can see for themselves just how talented you are. If you’re not comfortable sharing the code, or it’s proprietary to a client project, then talk about the process you went through to create the site. “Mention any roadblocks or challenges you faced in creating that final product, as well as how you overcame them,” suggests one expert at Toggl.

Link to your GitHub profile or social media profiles to provide even more context. Many recruiters will look to see if you’re active in developer communities before making contact. Your GitHub profile and Medium posts can show that you’re staying ahead of best practices, learning new skills, and collaborating with the developer community. It can give your listed skills and experience added credibility.

Consider the UX

Make sure your portfolio is user-friendly and accessible on multiple devices. Approach this task from two angles: the look and feel of your page and the technical aspects – load time, mobile-friendliness, and site security, for instance. Consider the following elements: 

  • Domain name
  • SSL certificate
  • Site navigation
  • Colors, fonts, and logo
  • Licensed photography

The look of your website isn’t as important as the work you’ve accomplished, but it can make the difference between capturing the attention of a recruiter for more than 10 seconds and getting lost in the shuffle. Try a site like Squarespace or GitHub pages for easy-to-use templates you can customize quickly.

Use testimonials

“Even in the tech age, word-of-mouth recommendations are a powerful sales tool, and adding a testimonial page to your portfolio is a great way to keep the work flowing in,” writes The Balance. Freelance developers often have to overcome the barrier of “culture fit” when getting hired; recruiters pay particular attention to soft skills like empathy, communication, and leadership when hiring a developer who can fit in well with an existing team. Ask your former colleagues, past clients, or university professors to provide a short blurb about you that you can add to your “About” page. This strategy can also help you stay on the radar of people in your network who might help you find your next opportunity.

5 Best Companies for Developers in Silicon Valley

As we outlined previously, developer skills are in high demand. It’s a job seeker’s market, and luckily for many freelance developers, there are plenty of great companies hiring to choose from.

Importantly, while Google, Facebook, Twitter, and other big-name tech companies are still great places to work, they don’t rank as highly as in previous years. Freelance developers who are more discerning in their job search can find open roles at smaller companies that make culture a priority. Here are the five companies in Silicon Valley that employees rank highly for being great places to work.

Zoom

Zoom, a video conferencing tool, takes the top position on Glassdoor’s 2019 ranking of best companies to work for. One reviewer writes, “Zoom has amazing benefits and tons of perks in the office. There are some great, integral people here at Zoom to work with. I consider many people on my team friends. CEO genuinely cares and listens to his employees.” Generous leave, a friendly work environment, and a unique onboarding program are just a few of the things developers like about Zoom. Zoom also featured on Business Insider’s list of 25 companies with the most satisfied employees. At the time of this article Zoom is hiring a Java Full Stack developer and Front End developer.

HubSpot

HubSpot is a marketing, sales, and service software company that helps businesses of all sizes grow. This company took the top spot in Glassdoor’s 2020 rankings. Employees say the culture is what stands out about HubSpot: “Your coworkers are genuinely invested in your success and will extend themselves to ensure you have access to the resources you need.” HubSpot also allows some positions to work remotely, which is great for freelance developers who want to retain some degree of flexibility. The company is currently hiring Senior Web Developers and Android Developers.

DocuSign

Headquartered in San Francisco, DocuSign is an electronic signature product beloved by its employees. “The culture, people, and future of this company are certainly reasons to join. I love my job and I love coming into the office each day. It’s a great environment to learn and grow,” says one reviewer on Glassdoor. DocuSign offers numerous comprehensive benefits with a special focus on inclusivity and diversity (something unique in Silicon Valley). Employees are invited to join Employee Resource Groups (ERGs) including BOLD (Brown Organization of Leadership & Development), Honor (Veterans), Latinx, and Parents, among others. There are tons of positions open at DocuSign, including one for a Senior Java Developer.

LinkedIn

LinkedIn consistently ranks highly for being a great place to work in Silicon Valley, though some employees note that the work culture is a bit competitive. Developers who are interested in working for an inspirational and high-profile CEO should look no further than Reid Hoffman (co-founder) and Jeff Weiner (CEO), two thought leaders who feature prominently in Silicon Valley. “Many of the smartest and most talented leaders in Silicon Valley are here,” notes one employee review. Browse their developer jobs on – where else – LinkedIn.

GitLab

GitLab is a DevOps lifecycle planning and collaboration tool used by more than 100,000 companies worldwide. Comparably data shows that GitLab is one of the best places to work in Silicon Valley – this company has many developers’ dream jobs. Flexible hours, transparency, and a positive work environment all make GitLab unique. There’s a favorable remote work policy for freelancers who wish to work from home and a deep commitment to inclusivity and diversity. The company is ranked 4.9 out of five stars on Glassdoor – and luckily, they’re almost always hiring developers.

The JetCake network can connect you with top tech companies in Silicon Valley – it’s one of the best ways to get hired with the support of mentors and career coaching. Get in touch to get started.

7 Most In-Demand Developer Skills for 2020

Looking to get hired in the new year? Freelance developers are in high demand. Analysts predict that roughly 4.5 million new tech jobs will be created by the end of 2020 to fuel the widespread adoption of the Internet of Things, the rise of AI, and growing cybersecurity concerns in virtually every industry. Developers with certain skills will be well-positioned to take advantage of the many opportunities coming this year.

There are many soft skills professional developers need to be successful. Along with characteristics like communication, teamwork, and flexibility, job experience in these technical areas is predicted to be highly sought-after in 2020. Here’s where developers need to focus their professional development in the coming year.

Python

“Python is one of the hottest skills out there, named the most in-demand skill for 2020 across nine of our global markets,” writes one industry analyst. Since 2018, there’s been a 45% increase in developers listing Python as one of their areas of expertise: this coding language is in high demand for its versatility and ease of learning. Because Python can support everything from functional programming to object-oriented programming, it will continue to be one of the most in-demand skills of 2020.

Java and JavaScript

Research by Indeed found that demand for both Java and JavaScript has risen by 6% and 17%, respectively, since 2014. Similarly, Hackerrank’s research found that JavaScript was 2018’s most well-known language. Developers interested in working on mobile and web applications, games and database software should invest in Java training; those interested in front-end applications and making websites more interactive should spend time focusing on JavaScript.

Web development

Companies are adopting new web development tools such as Gatsby.js, React Hooks, Next.js, and SwiftUI, according to Udemy. Gaining expertise in the newest, cutting-edge apps and software can give developers a competitive edge in the job market. If you’re already an expert in web development, consider deepening your experience by mastering one of these platforms.

Amazon Web Services

Amazon is dominating the market in cloud computing with Amazon Web Services. Their comprehensive cloud division covers database storage, analytics, content delivery, and other services that help businesses scale and grow. Demand for experience in AWS has grown 418% since 2014; consider getting a certification in AWS for 2020 to improve your position in the job market.

Cybersecurity

Recent headlines aside, cybersecurity is a continuous priority for businesses of all sizes. Small businesses are especially vulnerable, with 43% of cyberattacks aimed at small merchants who are ill-equipped to protect their customer data. Cybersecurity offers a lot of job security (pun not intended) as more and more companies collect and store sensitive customer data to fuel their marketing and product innovation. Expertise in data security, InfoSec, network security, penetration testing, and Linux security can earn developers a high salary in a fast-growing field.

Machine learning

Machine learning encompasses a variety of capabilities related to AI and IoT. Python and Java are part of machine learning expertise, but so is C++, R, probability and statistics, data modeling, distributed computing, automation, deep learning, and more. This field focuses on teaching computers to perform specific tasks without explicit programming. A background in applied math, algorithms, and statistics is also very helpful.

Data science and analysis

“In the last two years alone, 90% of the world’s data has been generated. The digital era has helped businesses across all industries to collect and store data in great volumes and this rapid growth isn’t slowing down,” writes one industry analyst. Experts at The Economist argue that the world’s most valuable resource is no longer oil – it’s data. There’s an overwhelming amount of data available, and demand for developers who can help collect, clean, synthesize, and analyze this data has grown exponentially since 2005.

How to Set Rates as a Freelance Developer

One of the trickiest parts of making the shift from full-time to freelance is learning how to set your hourly rate. There are many factors to consider when going from salary to hourly, including your level of expertise, added costs for health insurance and other overhead, as well as your time and the project scope. The further along you are in your career, the more you can charge; but setting your rates too high can disqualify you from many opportunities that can bring professional development and build your portfolio.

We’ll take you through the various parts that make up a salary calculation and help you determine how to optimize your offering for the best possible rates. But, if you’re looking for a quick benchmark, CodeMentor reports that experienced developers based in the US are asking for between $60 – $100+ per hour; developers based outside the US ask for between $40-60, depending on where they’re from.

Here are some tips for setting your hourly rate as a freelance developer.

Fixed-rate, hourly rate, or retainer?

The first step to setting your rate is to determine how you’re going to be paid. There are three ways to charge as a freelancer:

  • Fixed-rate: a fixed-rate project is one in which the price is agreed upon in advance. The final cost doesn’t change, regardless of how many hours you spend doing the work. 
  • Hourly rate: more flexible than the fixed rate, the hourly rate means an hour paid for an hour worked. Some companies ask developers to track their time for more transparent invoicing.
  • Retainer: “retainer contracts are based on an hourly rate, but specify the number of hours and weeks the freelance developer is to be retained for,” writes CodeMentor. For instance, a client can reserve a developer’s time, ensuring their project will get priority for 20 hours per week for 10 weeks.

The way you charge – fixed, hourly, or retainer – depends on the scope of the project and the type of work you’re asked to provide. Fixed cost contracts are generally not suitable for developers unless you’re already experienced in setting expectations, scheduling milestones, and adhering to your timeline. Since one report found that more than 83% of software projects aren’t carried out as initially planned, you could lose a lot of money when a fixed-price contract goes off schedule. For this reason, many developers stick to retainers or hourly contracts.

What’s the market rate?

The next step is to learn more about the market in which you’re competing for work. Price your services too high, and clients will go to someone more affordable. Discount your work too much, and you’ll struggle to make ends meet.

As we mentioned previously, freelancers charge different amounts based on where they live. The cost of living varies dramatically depending on your home country; a developer in San Francisco must charge more than a developer in the Philippines. Keep this in mind as you compete for contracts. Your level of experience is also an important factor. When you’re just starting out, you may want to discount your rates slightly to help build a portfolio of work and a reputation. Ask for client testimonials as you go. Your reputation as a freelancer is crucial to continuously grow your business.

Lastly, price your services based on your unique offering. Are you well-versed in a specific language? Can you work faster than most coders in your area? Do you know how to design an app that never crashes? Price your skills higher to attract clients that are more discerning when it comes to quality and expertise.

What are your overhead costs?

Lastly, there are some administrative costs you must factor into the overall rate calculation. Freelancers have to pay taxes as well as healthcare, professional development costs, software subscription fees, and other things for which your company may have historically picked up the tab.

One freelance developer who has gone through this process notes, “You’ll have to pay all your own Social Security and Medicare taxes, and you’ll pay your income taxes out of whatever you have saved yourself. Make sure you factor this into your rates and that you save for it. I’ve generally saved 20% for taxes, but last year that wasn’t enough for me. I’m saving 35% this year.” If you’re unsure how much you should save for taxes, speak to an accountant who can provide more information about your tax bracket and the according rate.

Still not sure how much to charge? Check out CodeMentor’s rate finder tool or get in touch with the experts at JetCake to learn how to join our network.

5 Steps to Professional Development as a Freelancer

Freelancing can be isolating. The flexibility of freelancing is a double-edged sword: on one hand, a professional can make their own hours and work from anywhere. On the other hand, a freelancer often works from home or at odd hours – and it can be lonely to work in that kind of solitude.

Of course, loneliness can be resolved by going to a coffee shop to work or meeting up with other freelancers for a coworking session. The more serious threat to a freelancer’s career is the lack of professional development and mentorship that would otherwise be available in a traditional office environment. It’s incumbent on freelancers to seek out their own development and mentoring opportunities to continue to grow professionally. Often, there’s no formal corporate ladder, no regular one-on-ones, and no development benefits available to freelancers.

For a freelancer seeking professional development and mentorship opportunities, here are some steps to take to branch out and grow your skills.

Complete a skills evaluation

Part of learning where you can develop is identifying areas of strength and weakness. This is an important first step to your professional development. “While it can be tempting to rely on a mentor to give you guidance on where you need to improve, you’ll get much more out of any mentorship relationship if you’ve done some self-reflection first,” writes Entrepreneur.

There are a variety of tools to help you understand your work style. Some popular tools include: 

If you don’t have the time or the budget to take a formal assessment, ask trusted colleagues or clients to give you some feedback on where you could improve. It could be as simple as asking a client what they think they will need ten years down the road: for instance, what coding language would be useful to learn? What business trends or customer preferences are they planning for? Map your development around the needs of your customers to stay sharp.

Create a professional development plan

Once you have a sense of where you can grow, create a professional development plan. Flexjobs says this step involves deciding on which of two areas you should focus your effort: “learning new skills or developing existing ones.” Essentially, do you want to become an expert in something you’re already good at, or do you want to broaden your skillset to learn new things?

There’s no right answer to this question. But, it does help guide freelancers to spend their time thoughtfully. When you have a path to focus on, then you can begin to carve out time each day to practice a skill, enroll in a class, attend a seminar, or listen to podcasts. It also gives you direction when working with a career coach or mentor.

Work with a coach

JetCake is just one agency where freelance developers can take advantage of coaching and a network of professionals to get career development. Our coaching focuses on working through a series of real-world projects that will hone your skills in effective communication, accurate estimation, agile methodologies, product concepts, and more. Once a freelance developer completes this phase in their relationship with JetCake, and successfully completes a project with a client, they will have access to JetCake Developer Network for ongoing support, learning, and growth. Codementor is a similar organization that offers live mentorship on freelance projects.

Other freelancers work with career coaches to help get feedback on their business, skillset, and growth. A career coach can weigh in on your LinkedIn profile, business development plan, and help you expand your network much in the same way a traditional mentor would. They can be expensive though, so make sure you go into a career coaching relationship with a specific goal in mind.

Keep in touch with former colleagues

Harvard Business Review recommends trying to schedule two substantive contacts per month with former colleagues to combat freelancer isolation and to make sure you’re apprised of industry trends. “Seek out real, regular interactions with former colleagues. If lunch at the old office isn’t feasible, there’s always a sustained IM chat on Facebook, an outdoor activity, or an invitation to dinner at your home. Such connections maintain continuity in your life. They also help you stay on top of what’s happening in your industry in a way that mere consumption of media can’t.” Keeping in touch with colleagues can help you find new business as well as learn about your industry.

Join a coworking space

Join a coworking space or another professional development organization, like Toastmasters. Coworking spaces frequently offer guest presentations or seminars to their members. Simply talking to people over lunch can also bring new learning opportunities across your desk. Find a way to network frequently and keep your big goals in mind as you interact with other freelancers, colleagues, and coaches.

What Soft Skills Do Developers Need To Be Successful?

Many recruiters understand the benefit of interviewing software developer job candidates and using a skill test to assess their job readiness. One of the things recruiters are seeking to determine throughout the hiring process is how a developer will fit into the team: what soft skills does this person have to help them integrate quickly and work well with the existing dynamic? 

“Soft skills…are far harder to teach, which is why, in a low unemployment market, companies should be looking to hire for soft skills and train for technical skills,” one hiring expert told Fast Company. The Wall Street Journal surveyed 900 executives to find out that 92% said soft skills were “equally important or more important” than technical skills. Unfortunately, 89% of those same executives reported having a “very or somewhat difficult time finding people with the requisite attributes.” 

It’s not enough for a developer to be technically talented; they must possess other skills to succeed at a company in the long run. Here are the skills outside of coding that a recruiter will look for when assessing a developer. 

Empathy

Suggesting new ideas is much easier when there is an understanding between members of a team that there won’t be any negative feedback or mockery, no matter how someone feels about an idea,” writes Hackernoon. The next big innovative idea or solution to a thorny coding problem can only come if the environment fosters openness, empathy, and the ability to understand where your colleagues are coming from. 

Great developers are also able to empathize with their end-user or client. Engineers and coders are experts in IT; but the average individual isn’t as well-versed in technology. As a result, the impetus is on the IT professional to put themselves in the shoes of the average person to build a product they can understand and use. Empathy goes a long way toward building a company’s reputation – and profit. 

Communication

Great communication skills go hand-in-hand with empathy. Communicate your ideas in ways that stakeholders outside your cohort can understand. Developers must be able to break down complex concepts in a way that a person from marketing or sales can also understand. 

Communication is equally about listening. “A recent study conducted at George Washington University showed that listening could influence up to 40% of a developer’s job performance,” reports one expert. Passivity – taking a moment to listen to others before making your opinion heard – is a sign of strength, not weakness. Be open to new opinions, feedback, and suggestions. Break the stereotype of the aggressive and arrogant developer; great communication can serve any professional well throughout their career. 

Teamwork

Often, it’s easy for developers to become siloed, as many tasks are independent and require head-down focus. However, says Level Up Coding,  “Developers sometimes forget that software development is a team sport, and a project is a mutual task for a group of people who have to work side by side, support each other, and move towards a single goal.” 

How can you show you’re a team player? Keep in touch with colleagues regularly. If you work remotely, check-in on tools like Slack and Trello. Make it a priority to share what you’re working on and keep up-to-date with the latest projects. Think about how your role can better interface with teams outside the IT department. What can you do to make everyone’s job run more smoothly? 

Flexibility

Flexibility, or adaptability, is critical for developers. 49% of recruiters are looking for candidates who are adaptable, especially in entry-level positions. Flexibility is particularly important for developers who don’t have a traditional background – meaning they’re self-taught or didn’t come from a computer science degree. Flexibility shows you can handle any changes that come your way, and as a freelancer, there’s nothing more valuable than someone who can roll with the punches and acclimate to a new project quickly. 

The tools of the trade evolve quickly, and developers can use their hard skills to convey adaptability and flexibility. Show that you can learn quickly by asking for a skills test in a new programming language or adding experience in Java frameworks to your resume. There are some smart ways to convey your soft skills through your hard skill abilities. 

Patience

“Not everyone understands how difficult programming is, or how long code takes to write. They may ask you to do something without realizing the scope of what they’re asking. This can lead to frustration,” writes Hackernoon. Yes, questions from non-tech coworkers and clients can be frustrating; but so can the actual tasks that you may find on your to-do list each day. Bugs, errors in coding, or slow connection speeds can all irritate the best coders; patience is a key skill to develop for longevity in this industry.