How to be a successful remote software engineer
*Full Disclaimer: All the views expressed in the blog are solely my personal views and biased based on my personal experience. The best-practices, technologies, or benefits listed are no silver bullets. The article is focused on engineers in the web development space.
Remote working is not a new concept but working remotely is gaining popularity during these times. Many organizations are forced to rethink how they work. Covid-19, has impacted every person in the world, but with the challenges the pandemic has created comes opportunity.
There has never been a better time to work remotely, especially for engineers. Many organizations have now turned remote-friendly, some have also started hiring developers from regions unheard of – the reason? Untapped potential!!
This blog post covers how a developer can be recognized, find a remote job, and be successful working remotely. However, it’s important to understand what is in it for organizations hiring remote developers.
Why organizations should hire remote developers
It would be unfair to say that organizations do NOT want to hire remote developers as they are bound by government laws which prevent them from going beyond their country to hire a person on their payroll. It’s only possible for large corporations.
Let’s first understand the benefits of hiring remote engineers. As an organization you can:
- Hire engineers who have untapped potential – these engineers have high productivity and are eager to learn.
- Hire engineers from countries with lower GDP – allows you to pay people less than you would if you hire local talent.
- Add diversity to your company culture – allows sharing different ideas and perspectives that you did not have before.
- Become a 24×7 company – by hiring engineers in varied timezones you can move faster and support customers globally.
Now that you understand why a company wants to hire you, let’s discuss why a developer would want to work remotely.
Why engineers should consider remote jobs
There are many benefits (and few drawbacks) of working as a remote engineer.
- Choose your hours – Since you work in a different timezone, you can choose the hours you want to work, though it’s important to have some overlap. (more on that later)
- Work with people with diverse backgrounds – there is a different thing about people who are well-traveled, right? Why is that?
- Get paid more than your peers – you can only earn what your industry pays you, what if you changed the local industry? 😉
- Choose where you work– Home, Coworking office, Coffee Shop? It’s recommended though you have a consistent setup (again, later!)
- Better work-life balance – Save time traveling, get more time off (remote organizations are usually flexible), be with your loved ones often.
- Choose your own technologies – though it helps get better jobs depending on the tech you work with, organizations are looking for the skills you’ve developed to help them identify what you’d work on.
- Immense growth – working with people globally brings a lot of different perspectives allowing you to 10x your growth.
Why would organizations consider you
We have established that organizations want remote engineers, now let’s look at why an organization would consider you? What do you need that makes an organization believe you are remote-friendly?
Open Source Contributions
Organizations want to look at the work you have done.
- It increases the credibility of your work
- It shows that you love writing code
- It gives them a glimpse into the code you write
If you are looking to join a startup, most likely they use technologies that are popular right now. Having experience in current tech is a great way to get noticed. Some of these technologies are (but not limited to):
- Python (Django)
- Kubernetes and other cloud devops experience is a huge plus
It usually helps to be able to work on both backend and frontend (Full-Stack), since it’s crucial to be self-driven in a remote environment.
Solid previous experience and profile
Organizations love when they find a person who is a great problem solver. Working on multiple projects and industries, at different roles, are usually indications that you will do well in their company. Companies will also check your Linkedin profile to understand you better. Having an updated profile and strong recommendations from previous employment can go a long way towards helping you find the right remote job.
I saved the most important one for the last. Companies hire for attitude rather than skill. Skill can be learned, but attitude takes a long time to correct. Having the right attitude is the only way to get good remote jobs.
So what do I mean by having the right attitude?
Display a willingness to learn more about their company, show a genuine interest in the company’s industry and what it cares about. Read the company’s vision, its core values, culture, and apply only if these attributes excite you. It’s essential that you’re a quick learner so that you can developed the required skills to perform at the company.
How to find remote jobs
So, if you have what it takes to be a good remote engineer, the question is, how do you find a remote job that you love?
Apply to a company’s remote jobs (via portals or company website)
If you do a quick search on Google, you will see many platforms like WeWorkRemotely, remote.co, and others.
You can start by looking at the skill you want to target and applying on the posts (make sure you research the company before applying). You need to have a great cover letter. Cover letters are a great way to express why you are the best person for the job they posted. A strong cover letter makes you stand out as companies receive 100s of applications.
Which application do you think they are most likely to open first? The one with the cover letter! You can also search for companies which are remote-friendly and apply directly via their websites.
Freelancing is also another way to get jobs. Freelance positions offer more flexibility and let you have a better work-life balance. Freelance work also gives you the chance to choose your hourly rate, but you may sacrifice job security, and you might also waste time hunting for your next gig.
Platforms like Turing, guru, Upwork, and freelancers are good places to find remote gigs.
Twitter is a great place to build relationships with other fellow developers. These connections will help you find your next job. 60% of organizations hire people that are referred by the people already working in their companies. This means the more people you know in the industry, the better chance you will have to get a good job.
Turing is a unique platform that bridges the gap between a freelance platform and a job portal. It is truly focused on the developer’s well-being, growth, and tools to be successful in working remotely.
Turing is different because:
- You do not have to hunt for jobs – Turing will understand your goals and find you a job that you want.
- You get long term work – You will work with a real company as their team member. You get the benefits of the company you are working for under turing.
- You still get the flexibility as you choose your own hours and your rate.
- Turing pays you on time – you do not have to follow up with your clients to get paid or depend on a rating system to get jobs.
- Turing handles issues that may arise between you and the client.
Turing gives developers peace of mind by allowing them to focus on their skills and their job instead of spending time doing administrative work that reduces their productivity.
Getting a job is only the first step. There is a lot more that you need to do to be successful at your job.
Being an effective communicator is the key to being successful at a remote job. Working remotely means you need to make extra efforts to communicate with your manager.
- Have regular check-ins with your manager (weekly as well as monthly)
- Have at least 3 hours of time overlap between yours and your team’s work hours.
- Make sure you and your manager(and your team) are always on the same page, and that expectations are clearly understood.
Turing.com actually does a great job improving your communication with your manager.
You need to be self-driven. The more you have to depend upon another person on the team, the more difficult it will get to be productive in your job. It certainly helps if you are a full-stack engineer, as this allows you to do both the frontend and the backend by yourself – if it is not possible then you must try to separate (but not isolate) your responsibilities.
The more time overlap you have with your team, the more flexible you can be with respect to separating your work responsibilities.
Having a decent office and workstation setup is very important. You cannot be productive at your work if you have “pebbles” on the race track you are trying to win.
- Make sure you have a good (and consistent) place to work
- Your environment should be distraction-free
- Good camera and microphones to have calls with your team.
- A fast computer that can handle your daily workload
Remote teams are happy and do more if they trust each other. Here is a great article that would do justice to explaining how important trust is in a workplace. https://blog.doist.com/trust-remote-workplace/
With this, I wish you luck finding a great remote company to work at. It can be hard, but rewarding. I trust that turing.com can help you find the next job that you love. 🙂