Cooperation with a Remote Team: Recipe for Success?

Cooperation with a remote team from the other side of the world might seem hard. But everything is possible with some preparation around a work routine. Why we believe it’s achievable? Because we’ve been working successfully with many companies from USA or UK for years. Some our clients shared their reviews in Clutch, mentioning our extraordinary skills in remote cooperation. Would you like to know our recipe for success?

Timezones

Our clients are based in different countries – USA, UK, Netherlands… This means coping with timezones. One hour time difference between Poland and UK is not an issue at all. What can be tricky is the difference between Central European Time and Pacific Time. 8-9 hours might seem like an insurmountable obstacle! At Sunscrapers we’ve successfully managed all difficulties. We have a semi-flexible working hours policy and our team members have an autonomy on their work hours. This means that catching up with a client from the West Coast is easy as a pie. 9AM in Pacific Time means 6PM in Poland. Someone from Poland can sleep a little bit longer and start their work later, which is an excellent solution for night owls!

Process

Proper planning is the most important thing at the beginning of cooperation. We determine a procedure that fits both us and client. Usually, every two weeks we have a sprint planning meeting, where highest priority features are discussed and further plans are made. In most cases, we incorporate daily scrums in our routine, especially if close cooperation is needed. Daily scrums are everyday meetings, where each team member tells more about yesterday’s tasks and tasks for that day. They are particularly important in a dedicated team model, which we discuss more in our previous post: Working Models in Software Development.

What makes our regular meetings better are… videoconferences. During a videoconference we can see our facial expressions and body language. It leads to easier, faster and more productive cooperation. Not to mention that all team members feel more connected to the project and each other.

Sometimes we meet face-to-face with our clients – in our or client’s offices. It’s not essential for project’s success, but it’s definitely a nice addition that can improve our cooperation.

Tools

Beside regular meetings and videoconferences, adequate tools are also really important in a cooperation with a remote team. Project management tools give us the possibility to be up to date with a current work status. Trello, Pivotal Tracker and Jira are examples of project management tools. At Sunscrapers, we always make sure to update our work status as soon as possible. Thanks to that everything is transparent and our communication with a client is easier and simpler.

Other useful tools for fast information exchange are instant messengers. We chose to use Slack for in-house communication and remote cooperation. Slack is a really helpful app, which allows us to answer all urgent questions immediately. We always create a channel dedicated for the the whole project team (including our clients). That’s why, regardless of distance, all members are able to participate in an instant communication if there is a need to.

Emails are complementing project management tools and instant messengers. They are usually used to send longer reports, meetings summaries or research information.

All those tools are relevant to build efficient and productive communication without barriers. We are trying our best to react as quickly as possible. It’s important especially in the beginning, when we are building trust based cooperation with our client.

Discipline & Personal Development

Some developers, despite their dedication to work, can’t maintain a discipline. Our established processes and tools are not enough for them to work productively with a remote team. That’s why we took some lessons from our past experience.

We pay bigger attention to recruitment processes. We check if our candidates have any previous experience with remote cooperation. Motivation for remote work preference and communication skills have big influence on our decisions. Not to mention that proficient knowledge of English is a must.

What is also a good indicator of employee’s attitude is the trial period. We look closely at our cooperation with new developers to see if they are able to work remotely. This is the reason why we prefer our junior developers to work from our Warsaw office until they are promoted to regular positions. They can also get help from more experienced colleagues.

At Sunscrapers we emphasize the importance of personal development. Our team members have many possibilities of improving their communication skills. They can take part in trainings and presentations, where we share our experience in remote cooperation. Everyone can learn how to effectively communicate, which makes work easier.

 

This is our simple recipe for a remote cooperation. Distance is not an obstacle, especially when we take all possible measures to minimise potential drawbacks. We are successfully handling all our projects, even though we are not working in client’s offices. If you would like to see some examples, check out our case studies or contact us!

Working Models in Software Development

There are different working models in software development. Differences between them might seem subtle, but actually they vary in terms of price, attitude and added value. Think about what you need and choose the best one for your company with our comprehensive guide.

Team leasing, body leasing or body shopping

Team leasing, which is also called body leasing or body shopping, is form of outsourcing conducted by a software company. Software company is an intermediary between client and developers. Such firm is dynamically looking for developers to meet specific project’s requirements, but it doesn’t lead the programming itself. Software company arranges two job interviews. First one verifies candidate’s soft skills and is conducted by a software company. Second one is a technical interview carried out by the client. Signing a contract between software company and developer happens only after client’s approval. Then, a developer is passed on to exclusively work for a chosen client, usually in client’s office.

What’s interesting is that an intermediary software company is an employer of a developer. That is why it is also responsible for administration and payroll of this employee. Salary, leave – all is handled by a software company. Usually a software company operates on a commission basis.

Pros

Body leasing is probably the fastest option, which makes it a great advantage for big companies. A software company usually employs a lot of recruitment specialists, who can easily and rapidly choose a bunch of interested candidates. And since it has the access to so many developers, it is also able to move team members between different clients and projects quite easily. What’s also important is that there is a lot of companies that do such intermediary services, so their prices should be rather attractive.

Cons

Choosing working models like team or body leasing is only profitable when the client’s project is big enough. Huge companies need tremendous number of developers and they need them fast. This may be associated with the considerable threat – hiring low quality employees. The biggest issue here is the speed of recruitment process itself. It is so rapid, that negotiations with developers are mostly based on giving them higher salaries, not checking their skills. Software companies don’t conduct technical interviews, which doesn’t help either. Another problem with body leasing is a matter of an identification with a company. Employees don’t feel connected to anyone. They don’t have all in-house benefits and very often they don’t identify themselves as a team members, which can be an issue with building a strong, devoted team.

Will team leasing work for me?

Team leasing is a good option if your company is under the pressure of time and cares more about the amount of developers and less about their quality. If flexibility in increasing and decreasing your team’s members is extremely important to you, you should consider team leasing. Also, if your company works on difficult projects and keeping employees in-house is a struggle – body leasing might be the way to go.

 

Team augmentation and dedicated team

Team augmentation and dedicated team working models are based on developers that are working full time for a client, but are hired by a remote software shop that specialises in nearshoring or offshoring solutions.

Team augmentation helps with insufficient manpower in a client’s company. Tech leadership and project management is usually on the client’s side. Software shop is providing know how and experience gained from other projects and encouraging developers to demonstrate proactive attitude.

Dedicated team, on the other hand, is about setting up a more autonomous group of developers. Tech leadership and project management are on a software shop’s side.

In both of these models, software shop is taking care of all employee’s benefits, like office space, hardware, leaves, worktools, but also professional development, wellbeing and entertainment. Developers are usually more committed to the company, because they are working in an environment conducive to their progress.

Developers can be either recruited for a specified project, like in team leasing, or chosen from the internal resources of a company. We believe that there is a better chance to access skilled and proven experts in software development with the second option. That’s why at Sunscrapers we have our own, independent standards of the recruitment process, so we can hire the most qualified, yet versatile developers.

Pros

Software development company that offers team augmentation and dedicated teams, usually provides added value to its services based on its past experiences and gathered know how. When it comes to price, dedicated team or team augmentation are almost always cheaper than in-house recruitment. While the initial cost may seem comparable in relation to a salary of a local, in-house employee, web development company pays for workplace, equipment, benefits or administration. It also cares for employees’ development and entertainment, making them more productive and harmonious. All of this is possible while maintaining flexibility in the recruitment process.

Cons

What can be a hurdle with both team augmentation and dedicated team is remote cooperation. Communication or a project management will require some extra effort. Another problem is difficulty in carrying out a project that requires a very broad range of technologies. Software shops usually specialise in particular technologies in contrary to big recruitment companies. Software shops are experts in specific areas, for example Python development or mobile apps production.

When it’s a good option?

Team augmentation and dedicated team models are perfect for medium and long-term projects. If you need committed developers to work closely on your projects and value for money is an important factor – it might be the best solution for you.

 

Project

With project based cooperation you set a goal to achieve in a specified time and budget and a software shop handles the delivery. This working model is a great decision when you need a web development shop to comprehensively take care of your standalone project. When you know what you want, you can assign everything to a software shop with multiple competences. Such projects are usually completely independent from your daily operations. Cooperation costs are based on fixed fee or time and material – we’ve mentioned differences between them in one of our previous posts. Are you doomed to fail your IT project? Hourly rate vs. fixed price discussion

Pros

Software shop provides added value to the project through its experience. Thank to previous projects and ability to upskill, web development company is able to deliver a requested solution. Software shop takes care of everything. It offers not only on-demand availability, but also access to a range of specialties: design, web/mobile development or consulting. All worries are removed from client’s shoulders with no obligation of long-term cooperation.

Cons

The major drawback of this working model is its price. Usually, it’s higher than other solutions, but there is a reason for that. Developers may be assigned to a project only for a short, irregular periods of time. And since project is held completely by a software shop, it generates more costs. Software shop has to engage more manpower without long-term cooperation, which might be pricey.

Is project model an option for me?

Project based model works best with short and medium-term ventures. It’s a good option if you would like to work with a partner with broad competences and you need flexibility in choosing them. Also if you are looking for an exact specialisation you can choose a software shop basing on its know-how, quality of work and relevant experience. Finally, project model is a great solution when you don’t have your own IT competences and outsourcing is the only option.

Considering your true needs is extremely important while choosing the best working model for your company. If you have any questions, leave a comment below. If you need help in choosing the right working model for your business – contact us!

Sunscrapers in Top Web & Software Developers in Poland by Clutch

We thoroughly check opinions about a product before we make a purchase. It is pretty obvious right? The same goes with looking for a reliable web development company. We know how important it is to research information before cooperation starts. And at this point there is a rescue for all companies looking for software providers – Clutch. Clutch is a B2B market research firm that helps to find partners for one-off project or a long-term relationship. It uses an innovative research process that melds a traditional research and newer consumer review services.

We were really thrilled to hear that we were showcased in their recently updated listing of Top Polish Web & Software Developers! We stood out from almost 140 companies with a thirteenth place.

Leaders Matrix

Leaders Matrix consists of 15th best Polish companies that are able to deliver. We feel that it is just the beginning of changing the image of Polish developers in the world!

What are our biggest advantages? Our clients mentioned our engagement in offshoring cooperation, which made any communication barriers or time zone differences irrelevant. Also our superior English skills and uncompromising responsiveness were indicated as our strong points. What is more, our our knowledge and passion for Python was much appreciated in our client’s reviews and we are more than happy to read that!

Highlight from our client’s review.

Our startup client wrote that “For a company the size of Sunscrapers, it’s unique that they try to keep relationships on a personal level. They invest in people and find quality programmers who don’t only care about being paid a lot. We are glad we found Sunscrapers as a partner.”

Big thanks everyone!

We feel grateful for being acknowledged by Clutch. Thanks to the support from our clients, we are able to solve their problems with technology. Big thanks to our team as well. We are really proud of our developers: keep up the good work!

If you would like to read more reviews, check out our Clutch. Feel free to contact us if you have any questions!

Looking for developers? These are your best options!

There is a moment in a company life where existing team of developers is great and successful but there are not enough hands to work on a product. At this point, in-house recruitment starts to be a nightmare and extra support is needed – favourably as soon as possible. What can you do if you find yourself in this position? There are few options available and we will shortly describe you their pros and cons.

Recruitment agency

First option is the recruitment agency that can be the additional support for in-house recruitment. Although the process of hiring can still take more than a month, it’s probably, still, the fastest option of getting help. The additional advantage is knowing all the associated costs upfront (agencies are transparent with their pricing) which can help in predicting the necessary budget. What’s more, many recruitment agencies work in a “success fee” mode which means that you only pay for the staffed position – that decreases the risk of spending money without hiring anyone.

On the other hand, the remuneration of the agency can be quite high. It depends on a country, but usually a commision that varies around 10-20% of candidate’s annual salary is a standard. You also need to remember that the agency is helpful when it comes to preliminary selection of candidates but after that their job is over. Conducting technical interviews and final responsibility for making the best choice is left to you.

Why cooperate with the recruitment agency?

HR recruitment agency might be the best option when you’re in a desperate need of increasing your recruitment pipeline fast and your budget is quite big. Also, when you’re looking for someone that can join you directly in your office.

Freelancer

Another option is hiring a freelancer that can join your team for a short period of time. There are many ways to find a perfect contractor – you can try networking or searching portals such as toptal.com or upwork.com that are collecting experienced freelancers.
The recruitment process of a contractor can be faster than with the in-house recruitment. Also, existing databases of candidates, make checking their backgrounds easier. With in-house recruitment it’s more difficult – every time you have to ask for references from past employers. What is more, freelancers usually have lots of experience and different sets of skills because they change projects quite often.

There are some major cons of hiring freelancers though. Their availability is a big issue – they may work on few projects at the same time or even disappear when they find a full-time job elsewhere. It is also your responsibility to manage such person and do check-ups. You need to be sure that a freelancer is in constant connection with the team and knows what to do. Also, costs of hiring a local contractor are quite high. And yes, remote contractor can be cheaper but disadvantages we’ve mentioned above can grow to really serious issues. Last, but not least – a freelancer’s loyalty is rather low. When the project comes to an end a freelancer disappears from the team together with all meticulously gathered knowledge and know-how. With the next contractor you have to start the onboarding and training again.

So when it’s good to hire a freelancer?

Hiring a freelancer might be a good option when you need support for a short period of time – few weeks up to few months. It’s also easier when your project’s tasks are fully described and new developers don’t need a long training before they become productive.

Local software shop

Cooperation with a local software shop is a great option because of the stability of such partnership. Those companies hire many employees and that lets them be elastic with regards to developers assigned to your project. Usually the quality of their work is high because of their competences and track record. Also, some firms are like one stop shops – they have extra competences, so you can carry out your project only with them. Strategic planning? Market research? Design and UX? They can help you with almost anything you need.

But the biggest and usually the most disqualifying issue with the local software shop is the price of the cooperation. It’s the most expensive option from all mentioned above – agencies in the big US cities can charge even $200 per hour!

OK, when it’s a good option?

If you have a standalone project that can be developed in parallel to your current work (such as systems maintenance, bugs repairs, customer service requests), local software shop might be the way to go. It’s also a good option if you would like to work with a partner with broad competences, not only software development. Finally, this option will also work if you have an IT department within your company (because you don’t need it!) and you can implement a project through external partners.

Remote software shop

Might be the best option if you are looking for a reliable, solid and experienced partner but your budget is not limitless. In addition to the advantages listed in a previous paragraph, you have the access to truly talented people from different parts of the world. There is a huge competition for the best talents on a local market, that’s why extending your search area may help. With a remote dev shop, you have a great opportunity to build a long term cooperation – lower costs allow to set up a sustainable arrangement without the need to worry about optimizing costs in future. At Sunscrapers, for example, we can set up dedicated teams for our clients which, at the end of a day, is very similar to opening up an actual remote office.

The disadvantage of this solution might be the lengthy process of singling out the best software shop from many available options. It’s really important to conduct the process carefully and comprehensively, because there are many companies of questionable quality that are better to be avoided. That’s why you have to be 100% sure that communication with the chosen partner and his workflow will not cause problems. Also, you need to remember that distance might make things more difficult – with remote work everyone has to put in a little bit more effort.

When to cooperate with the remote software shop?

It’s simple – if you’re looking for a long term solution while keeping your budget on a reasonable level. And when you are not afraid of trying out a remote partnership.

You know that you need help with extending your team of developers and you know what options you have. Now, you should think about your true needs. Do you need support in the short or long term? Does your project require close cooperation or is it standalone? What’s most important to you – time, budget, same location? Answer those questions and if you would like to know more about us and our experience, check out our website www.sunscrapers.com or contact us!

Perfect decision: outsourcing to Poland

Outsourcing to Poland is nothing new – our country has been recently a huge market for foreign investments and it is prepared for a serious expansion in upcoming years. Poland is considered the number one investment location in the CEE region by AHK survey and most attractive location for nearshore outsourcing in Europe, according to recent Raconteur report. But those are economic statistics, and what about some significant real-life assets of Polish developers?

Knowledge

We brag about around 80,000 graduates in IT each year in Poland, although some may say that universities can not keep up with the rapidly changing market’s needs in scope of the new technologies. And yes, our IT market might be less mature than Western markets, but Polish developers are world-known for their proficiency in general technical knowledge. Did you know that Polish IT professionals get the highest ranks in international programming contests (Microsoft Imagine Cup, Google Code Jam, TopCoder, the Central European Programming Contest (CEPC), every year? We aim high in our commercial experience –  Polish development shops cooperate not only with world’s best tech startups located all around the world, but also with bigger players on the field.

Communication

But we all know that knowledge might be nothing without other skills. Fluent English is starting to be a standard among Polish graduates and employees, which places them quite high in the English driven business world and makes every international cooperation easier to handle. Nevertheless poor communication skills, lack of initiative and business understanding are often considered as the weakest points of Polish employees. That’s why at Sunscrapers we look for developers who, apart from technical knowledge, have high level of interpersonal assets. We then inspire them to develop a proactive attitude and improve their soft skills even more. As a result, we are able to successfully communicate, understand our clients and work with them remotely.

Cultural proximity

What also benefits Poland as the outsourcing partner, is the similarity of cultural and social norms. There is a small gap between Polish and Western mindset, which is nothing bad, because every nation can be proud of its specific traits, right? That being said, we are way much comparable to Western professionals and business partners, than for example, Asian developers. Not to mention, that there are strong institutional ties between worldwide partners, which helps in any cooperation and understanding.

Economic issues

If you are wondering about outsourcing projects to Poland, you definitely take economic matters under account. We have to say – Poland is doing just fine. We remained stable after 2008 crisis and even now, after recent elections and Brexit, more and more investors are deciding to invest in Poland – an annual growth rate in the software market reached 10.7%. Poland is also an acknowledged member of EU, NATO, WTO, OECD and ESA and has a transparent legal system.

 

The high quality of Polish web development services, combined with excellent communication skills and economic factors, are the driving forces, that make outsourcing to Poland interesting and affordable for foreign companies. Software shops like Sunscrapers cooperate with US and Europe based clients, providing them with skilled developers. If you are interested in finding out more about our outsourcing services, just let us know at hello@sunscrapers.com.

Python – our language of choice

image
Choosing the right programming language for your business 

Regardless of whether a large company is introducing a new IT project or a startup is building its first MVP, choosing software engineers is one of the most important decisions any team will make. This decision will determine a project’s success or failure. Today I explain the reasons why we believe Python is the best language of choice for us.

There are many programming languages to choose from, as well as there isn’t just one feature to think about during this selection. Each language has different characteristics, communities, ecosystems and support to consider. In this article we want to show you how to analyze the relevant factors when selecting a programming language. What’s more, we explain why our language of choice is Python.

Let’s think about two kind of circumstances. If it’s for a personal project, you may choose a language you know. However, if you have your own company or want to start one, there are more factors to consider before choosing a perfect technology to solve your business problems. A choice of technology determines a second step which is finding the best tech partner.

Which aspects are relevant during a selection process of a programming language? To answer the question you should concentrate on two aspects related to the programming stack. The first one is the popularity of a language. Make sure that there are many well qualified developers on your market who are ready to work at your company. The second one is the problem that you want to solve using a particular technology – check which technology was used in similar business problems and if there are libraries supporting it.

 

Our language of choice is Python

This post will explain to you why Sunscrapers uses Python and will describe the benefits which our clients get due to that choice. At Sunscrapers, our backend language of choice has been Python for 5+ years.

Our previous post answers to the question: what do we love Python for? There are three main reasons:

  • Python is developed under an open source license;
  • its community is open and mature;
  • its foundations are easy to learn for beginners.

Now we want to go further and explain you why Python is our language of choice.

 

Let’s take a look at the most relevant aspects of Python

We should start with a brief presentation of Python’s definition and its usage. Python is high-level, general-purpose, interpreted, dynamic programming language. Its design philosophy emphasizes code readability and its syntax allows programmers to express concepts in fewer lines of code than possible in other languages such as C++ or Java.

We can use Python in these fields:

  • web development
  • scientific programming
  • big data and machine learning
  • computer graphics
  • scripting

Python responds to the needs of our customers and helps us ensure the best quality of support. Thanks to its fast implementation we can introduce changes in our clients’ projects without additional waste of time. The next valuable aspect is readable code – we can easily involve new person to the development process when our client wants to upbuild his project. Python is good for web development  – it fits nicely with front-end frameworks like Angular.js. It can scale to solve complex problems. Also, it guarantees an intensive focus on the problem because of a simple and elegant syntax. We can easily build MVP in Python to test our client’s business idea.

There are other important benefits that boost the effectiveness of working in Python. Most of all, Python is constantly updated and thanks to that the projects written in it will not stack in an old technology. We should also appreciate its active community which organizes valuable events, promotes Python and is created by many talented developers. The last one is a spectacular amount of open source libraries which gives us additional possibilities of building-up our projects.

As you may have noticed, Python gives us a wide range of possibilities to support our clients through the use of technology. We want to go deeper into this topic and that’s why future posts in this section will compare Python to other languages. Stay tuned!

Foundations of Foundation 6 – Jakub Włodaczyk (pl)

How can you get your projects from prototype to production in a faster, lighter and more flexible way?

Kuba familiarized us with Foundation 6 frontend framework and its features. The presentation explains everything we should to know about Foundation 6. 

The key points are: 

  • Prototyping websites and web applications
  • Production version of the website
  • Non-semantic classes – Material Design Lite
  • Semantic classes – Foundation
  • Facilitated start with Zurb 
  • Foundation 6 for Apps
  • Bonuses & perks (Foundation for Emails, Templates, Templates for Apps, Building blocks, Yeti Launch, Flex)

This presentation is a part of Sunscrapers’ weekly talks. 

Slides available here: http://www.slideshare.net/sunscrapers/foundations-of-foundation-6-jakub-wodaczyk-pl