Game-Changing Impact of a Great Design Pitch

Let me guess – probably at least once in your designer’s life you felt unhappy because the client ditched the idea you’ve been working on with incredible engagement. They decided to go with something that you didn’t recommend. Something less functional and less visually appealing. Well, we’ve all been there. 

But did you really do everything to avoid it? Let’s look at how you, the designer, can encourage the client to consider and (hopefully) approve your solution. And all that without broken hearts, tears and bribes. 

Nobody wants to be late

Bad news. If the argumentation for choosing a project you care about is prepared by you after designing everything, it means that you are late. A preliminary analysis has to be done at the beginning of your process. For me, it’s the first meeting or call with the client. This is the moment when you try to find out who the person you are talking to is. Using empathy here is crucial. Listen carefully, ask questions, take notes, try and do understand. Find common ground between you two.

This knowledge you’re gathering will help you prepare the project in a way that minimizes the likelihood of missing the client’s taste and needs. 

Tell them about your design process and experience of working on similar projects. Thanks to this, you will not only put yourself in the position of a person who knows what they’re doing – the client will feel cared for and will know what and when they can expect from you. They will feel that choosing your company was a good idea. Oh, and the excitement for what’s to come!

No research is ever quite complete

Research is what I’m doing when I don’t know what I’m doing.” – Wernher von Braun once said. And since such words were given by a German scientist responsible indirectly for the conquest of space, there must be something in it, right? Research phase allows you to design based on facts and not assumptions. It provides you with the first set of arguments that you will use when translating your design decisions to the client. It’s also time for you to think about who you design for.

The beloved ‘less is more’ principle and ubiquitous minimalism will not work for every project. Don’t forget about the client’s business goals – after all, their opinion will ultimately determine whether what you have prepared will be accepted and released for development. Remember to ask yourself – what problem am I trying to solve? Why is this solution better? How will it affect the user? If you feel that the direction you are going in is not good, smile at your teammate. A 5-minute conversation can be more helpful than you think (and who doesn’t love coffee breaks?).

Ego trip: a journey to nowhere

Let’s get the facts straight – in most cases, your clients know the business in which they work more than well, but they are not experts in product design. And that’s okay! It may turn out that you come from two worlds that do not have much in common, but remember – just because your client does not know what a vector is, does not mean that they should. They know their profession just like you do yours. So why are you trying so hard to exclude him from the design process?

Overcome the fear of showing your work in progress and share it with your client. Have a discussion, make them feel that they are a part of it. Use specialistic vocabulary but try to explain it in a way that is easy to understand. Try to shift their views on users, not their personal preferences. You’ve done your research so you know what they need and how to provide it. If your client still disagrees with you – don’t worry. After all, every great project is done thanks to collaborating and interaction.

If you can’t explain it simply, you don’t understand it well enough

If I had to choose one word that causes an accelerated heartbeat in most designers, it would be ‘deadline’. Unfortunately, time goes by quickly when you devote it to designing something you truly believe in. The presentation of your project is just as important as the design process itself. Of course, some may say that good design defends itself, but in my opinion, the ability to sell your work is necessary. 

When pitching your final project, treat this time as storytelling. There is a high probability that your client does not remember all the findings between you two from the past, after every iteration that you’ve completed. So tell your client about the design brief, inspiration and in-depth research you conducted. By presenting an analysis of all your observations, you show that what you are about to display on the screen has not come from anywhere. I always ask the client to refrain from giving you feedback until the presentation ends – thanks to that we can have a broader discussion after I presented everything in a way that I intended – to the point.

Here we go again

No matter how hard you tried, things didn’t go as planned? Well, remember what I told you at the beginning of this article? We’ve all been there, trust me. Leveling up how you present your work takes time and practice, but it is entirely possible. And sometimes even being Steve Jobs of presentations is not enough. Treat your failure as another experience, draw conclusions, open Sketch, click file -> create new… and a new story begins.

Is Your Idea Worth Trying? MVP, PoC and More

If one only knew if the idea they have is even worth trying – we would have much less false start businesses and bankrupt companies. But! It is possible to validate some circumstances beforehand. That’s what prototypes, MVP and PoC are for.

At a glance, they all seem to be the same thing. We will show you what are the differences. Also, in this article we investigate why you should consider doing those trails before you even think seriously about your next step in business.

MVP, PoC, a prototype. What’s the difference?

We can choose from a couple of different approaches when it comes to testing a mobile app before we dive into full business mode.

  • PoC

Which is short for “proof of concept”. It should answer the question: Is this idea viable?

Usually, it is developed as an internal project to validate the main functions of an app and determine if the production process should start at all. It gives all the project participants fast clarification if the concept is worth pursuing.  It’s also the cheapest and safest way to test it beforehand.

It doesn’t mean that if PoC analysis results in a negative outcome, we should drop the idea. It actually can help it evolve, so the product can be more profitable for the owner and useful for their clients.

  • MVP & MVVVP

MVP stands for “minimum viable product”, while MVVVP is “minimal viable valuable validating product”.

MVP is a minimal form of an app that can be launched so we can collect feedback from the users. It should have core features and basic design so people who use it can focus on its functionalities. The main focus of MVP is proving value proposition.

MVVVP is just an extended concept of MVP, formed by Guy Kawasaki. Besides economic worth, MVVVP should also determine if the product changes the lives of its users and if the idea corresponds with the brand’s philosophy. Although it is not a well-known term, keeping in mind the rules of MVVVP can make MVP even more reliable. 

  • Prototype

We recognize them because prototypes are well known from industries other than IT. Car manufacturers and other companies that create physical objects use prototypes to showcase new models of their products.

In the digital world, prototypes are the same thing. Their main goal is to test whether an app works properly. It’s the first chance to go through the actual app and see how it works. A prototype can be designed every step of the way to the final result. It allows seeing how the product will work and what else is there to be changed.

At iteo, we usually create prototypes based on UX product workshop results we achieved with a client. We prepare low-fi views and if there’s a need for more – an Invision App prototype. Usually, they are a part of functionalities, including user-flows like login process or adding to cart process.

So which one should I choose?

Ideally – all of them. As you can see, PoC, MVP and a prototype have slightly different objectives but their purpose is similar – to see if the idea is worth trying. They are useful tools to polish the app on every stage of production. This way we can be sure that our product will fulfill all business requirements we assumed at the beginning.

Also, you probably already noticed that each of these methods can be useful at different times. PoC will be perfect at the beginning before the development process starts. MVP is great to communicate with future clients and users of the app. Collecting feedback is crucial to understand how our product can serve its customers. And a prototype can be useful in every step of the way – some do it towards the end of the project. At iteo, we prefer to make it early, so we can give the client an idea of how their product will actually work.

Why should I even do it?

Each of those methods will give you comprehensive feedback and an idea of what you should do next. If you wonder why is that important, the simplest and most important reason is to save time and money.

You will lower the usage of your resources because the team won’t waste it on developing an app that has flaws or is not viable. Also, if the value of your product will be proved beforehand, your business will have an opportunity to gain as much as possible out of it. You won’t lose money and clients thanks to a failed idea.

Now you know what PoC, MVP and a prototype are. Do at least one of them to evaluate your project. Being prepared for changes and evolving the product when it’s needed will save your resources and will give you a chance to achieve success. At iteo, we can help you find out whether your idea is worth trying. We develop apps for many clients from around the world. Let us know what we can do for you.

Clutch Recognizes iteo as Top Polish App Developer

We are proud to announce that Clutch decided to recognize iteo as Top Polish App Developer. It’s an honor to be appreciated by our clients and to receive such a title.

What we can do for you?

Our services include mobile app and web development, web platforms, frameworks and CMS platforms, programming and scripting, and UI/UX design. We work with small to mid-market and enterprise clients across a variety of industries, including financial services, consumer products and services, as well as business services. 

Since 2011, our goal was to be an innovator in the digital experiences space. Specializing in human-centered software design and development, we take clients’ ideas and visions and help them create robust, scalable digital products. 

Why choose iteo?

With so many qualified agencies out there, choosing the right developer for you might seem like a daunting task. Our experience with clients such as Deloitte, Wrigley and many others is what distinguishes iteo on the market.

Take our work with the globally known car manufacturer Kia, which needed help bringing the excitement of a physical car showroom into the digital space. We designed an iPad app, enabling Kia sales consultants to show customers their dream car right in front of their eyes. The app is now used across all European Kia locations.  

We seek to enrich our clients’ ideas from the start with our knowledge and experiences. With a team of skilled strategists, mobile and web developers, UI/UX designers, and advisors, we’re committed to solving your problems and creating novel digital products.

What do clients say about us?

It feels great to be at the top of the list, within the first 20 of more than 300 top Polish app developers listed on Clutch.co, a marketplace for service providers.

We also have fourteen verified reviews on Clutch. One of the most recent ones came from our client Sunbuk, the creator of an online booking platform for an Italian beach club. For the reviewed project, we built a website using JavaScript that allows members to easily reserve spots at the beach club. 

“iteo created our online presence from scratch, so all the business we’ve received from it is a direct result of their work. We had 50 partners sign up within the first few months.”

– Valeria Papini, Project Manager, Sunbuk

We were very pleased to receive an overall rating of five stars from Sunbuk. To see more examples of our work, check out the Projects section.

Let’s do something together!

Check out our profiles on Behance and Dribbble which showcase visual work we take pride in.

If you’re interested in learning more, please don’t hesitate to contact us. Let’s do something extraordinary together!

8 Examples Proving Testing is Important

One might wonder – why software testing is necessary? Is it worth it to invest in testing? We’ve been wondering the same thing.

As a field of software engineering, testing is often underrated by digital agencies. IT companies tend to hire inexperienced employees as testers. The reason might be that testing is still not a very well-known discipline and a lot of people do not realize how important and crucial for the product this process is.

Testers’ lack of qualification is often risky and can be expensive, as well. Late bug detection can cause serious implications. That’s why it is important to find them as soon as possible, during the early stages of the project.

In this article, we collected many examples of what can go bad if the software is not tested properly. They are spectacular, so hold on tight. Let’s find out why the lack of testing can often have fatal consequences.

Before we start – let’s define what testing is

There are many different testing definitions. Their authors consider each of them to be the right one. One thing is for sure – testing is as old as software development itself. And we can say it existed since the first program was coded.

“Testing is an infinite process of comparing the invisible to the ambiguous in order to avoid the unthinkable happening to the anonymous.”

– James Bach

But what does it mean?

Simply put – testing allows us to verify and validate software written by programmers.

  • Verification answers the question: “Is the product produced correctly?” (is the software following standards and specifications)
  • Validation answers the question: “Is the produced product correct?” (is the software following the client’s needs and demands)

Big fails caused by lack of testing

Situations described below prove how critical testing can be. They happened in real life. These are large-scale projects and large-scale fuckups!

Number 1 – Small bug = big problem

In 1962, NASA and JPL built Mariner 1 – the first American spacecraft. It cost 18,5 million dollars. Political pressure was enormous. Rush and ambition instead of common sense and carefulness caused one of the most grotesque catastrophes in the history of space programs. 

The mission began on July 22nd and its goal was Venus exploration. After 294 seconds of flight, the rocket received the autodestruction command. Long investigation showed that the emergency program had a very small bug: lack of “-” in the equation.

Source: https://en.wikipedia.org/wiki/Mariner_program

Number 2 – Old doesn’t mean better

European Space Agency wanted to have a bigger and faster rocket than “Ariane-4”. Building “Ariane-5” cost 7 billion dollars and took 10 years to complete. The audience witnessed rocket collapsing less than one minute after its take-off. 

Some of the software was copied from the old rocket. During the flight, one of the functions reported an error that would input incorrect data into the internal navigation system. The main system would then command a sudden 20-degree bend. The investigation determined that there was no prior system testing. Also, there was no flight simulation.

Number 3 – Precision is key

Mars Climate Orbiter cost 700 million dollars to build. After flying for 10 months, it finally reached Mars. At 9:04 AM, after finding itself on the other side of the planet, space probe lost touch with control tower. Since the probe burned down in Mars’ atmosphere, the connection was lost forever.

As investigation showed, part of the software written in England operated in different units than the rest of it which was developed by NASA in the United States. The bug was serious enough to disrupt the work of the probe’s afterburners. Mars Climate Orbiter neared itself too close to the atmosphere and burned.

Number 4 – Small details matter

In 2008, a tragic accident happened – “stealth” type bomber B-2 which was built for 1.4 billion dollars crashed. It was proven that the flight control computers were provided with invalid data caused by moisture in units responsible for sending information from the sensors on the aircraft’s wings. As a result, the pilot decided to lift the bomber too early.

Number 5 – When a bug cost lives

Therac-25 machines were used in x-ray therapy in 1985-1986. They had 2 modes with different levels of radiation. If the operator switched the modes too fast, two sets of instructions were sent at the same time which means the patients would get a much higher dose of radiation. Life span after receiving 5gy (gray) of radiation is approximately 14 days. Therac-25 would give its patients a dose of hundreds of gy. At least 5 people died as a consequence of this mistake.

Number 6 – Timing is everything

Another tragedy caused by software bugs happened in 1991 in Saudi Arabia, military unit Dhahran. Surface-to-air missile MIM-104 Patriot didn’t prevent Scud rocket from hitting the base and killing 28 soldiers, destroying lots of infrastructures. Its battery was on for 100 hours straight. During this time the clock of the battery delayed itself for ⅓ seconds. What happened is that the system detected the rocket but it scanned the wrong part of the sky and didn’t manage to confirm the danger.

Source: https://en.wikipedia.org/wiki/MIM-104_Patriot

Number 7 – Same mistake twice

Two Boeing 737 MAX catastrophes. First in Indonesia in October, 2018 and then in Ethiopia in March, 2019. Total of 346 people died. The reason behind it was a defective software for MCAS (Maneuvering Characteristics Augmentation System). The airplane was receiving the wrong data from the angle of attack sensor which caused the launch of MCAS. The system tried to unnecessarily correct the aircraft’s position causing the crash.

Number 8 – Last but not least: the one with a happy end

Stanislav Pietrov actually saved the world from World War III. He checked the alarm sent on Monday, September 26, 1983, by “OKO” – a Soviet missile defense early warning program. The alarming claim that the United States launched 5 missiles in the direction of the USSR. It turned out that the program had a bug. The system would recognize solar radiation reflecting from the clouds above the US as a missile launch. This event was classified as top secret and revealed to the public only in 1998.

Source: http://www.astronautix.com/p/prognozsprn.html

Now you know why testing is crucial

Examples above show some of the biggest and most expensive mistakes in history. They did not only cause huge financial losses and reputational damage. Some of them cost the most important price – human lives. 

Unfortunately, we could recall even more examples like that. All those events could have been avoided if buggy software wouldn’t be authorized to use. Let’s face it – there is no way to know if there are any errors that can cause dangerous situations and malfunctions if there is no testing included.

Testing is an integral part of software development at iteo

So to answer the question – why do we need testing? Most importantly, to find out if a system or a product can be allowed to use. Testing provides us with information to evaluate the state of whatever we develop.

At iteo, we always pay attention to details and care about the high quality of what we create for our clients. Testing is one of the main steps in this process. What’s important is that we always pick adequate tools and procedures for testing. We know that e-commerce stores need different testing methods than flight control systems. Our Quality Assurance Team consists of experienced and qualified employees. All that so we can be sure that apps, websites and other products we build work according to their purpose.

Product Workshops Value Explained

One of the original practices at iteo is product workshops that we organize for our clients. Explaining their value is extremely important, as it sometimes might not be clear why we should discuss the ideas in even more details, technologies and cooperation between the dev house and the client. We understand that it costs money and it takes time. So we took an exercise created by Sakichi Toyoda to explore the cause-effect relationships – and we will stretch this method a little to fit the purpose of this article.

The exercise is called “5 whys” and allows us to glide from the overall problem right to the real cause. Let’s start, shall we?

1. Why are we even talking about it?

First of all, let’s establish what product workshop actually is. For us, it is a collaborative work of product design team, product developers and the client, limited in a specific period of time, with the goal of creating the product.

You may say – okay, but what is the difference between this and the whole product development process? Well, they say it is a journey that matters, however, at the end of the day, we all want to know where we aim at. And product workshop is exactly what allows us to define that. 

Probably if you decided to develop a product you already have something more or less specific in mind. But we will ask questions. Because what if some parts of the product are still not defined, unclear? We may need to go back or wait for answers or even ditch some parts. 

And what if (worst case scenario) we deliver a complete product done exactly by our client’s directions and nobody will like it or be willing to use it? This is exactly why we need product workshops – to escape all possible misunderstandings, uncertainty and unpleasantness that may affect the final output.

2. Why customers may not know what they want?

Let’s define a customer. In case of product development – is that our client or their final customer? Of course, it depends strongly on the specific case but I think you get where I’m going.

Not every client empathizes with their final users. That’s why product workshops require the engagement of people from different fields of expertise in order to examine the case from different perspectives.

From the client’s site, we encourage to bring in people from business, marketing and every other department that have an association with final customers but also companies’ decision-makers. We believe that they come to us for, mentioned above, guidance but also to rely on our experience, knowledge and creativity.

Our workshop team consists of UX designers and developers (of course we decide on team composition in the prism of specific product needs, but we will get to that a bit later). If needed, we may also pull out big guns and spice up the product design phase with not only workshops but also an arsenal of research, surveys and studies. All that to help you create and drive products with the perfect market fit.

3. Why should both sides invest in that?

If you have any experience connected with product development, you may think that such a workshop is a waste of time. You may say that it sounds like wasting time explaining your vision, answering questions that you could get via email or designing the product with us. And, to be honest, at the beginning it may look like we are redoing things you already prepared, asking questions you already answered. 

I never heard of a workshop that was groundbreaking from the beginning. But that’s okay. We need to be on the same page from the get-go, understanding each, even theoretically the easiest, functionality, setting up the same goals. We have thinkers and doers from both sides so what you dream of – we verify, but also, what we design – you verify. 

Those long hours of hardcore collaborative work pay off at the end. Getting from the bottom and overall idea, we land on the detailed product. It is never easy to exactly predict what will be the outcome – the prototype, full product backlog or maybe only some product draft? Maybe we would set on a completely different product or service that better fits your needs?

The results may be surprising, but you will never know until you try (meaning also – you will otherwise never be sure how your vision will hit the market).

4. Why expect the unexpected?

As was said before – yes, we are professionals, but also – nobody has specific, domain knowledge as mastered as the client. That is why collaboration is so important here. You have your vision and expectations. We have our solutions and experience. Now we need to get them working.

The aim is to leave the product workshop with a mutual goal and outlined roadmap. Well-known quote says that if Henry Ford would ask people what they want, they would have said: faster horses. So we have a person with domain knowledge, customer need and some ahead of time know-how (sounds familiar?). But who would expect the outcome? Ok, we may not be talking about some life-changing solutions so probably more adequate would be the viral tree case:

This is why communication matters. We respect your time, money and knowledge. We are not fortune-tellers either. Only by joining forces we can create something that will fit your company’s, customers’ and market’s needs (and will also make us proud). We do our best to choose workshop methods that will provide the best outcome regarding the given case. However, we believe that even best-described tools can be used in different ways and may have unexpected results. 

5. Why one does not fit all?

Basically, for the same reason, one medicine will not heal every sickness. There are just different kinds of diseases. Viruses mutate, and so does the competition and customers’ needs. That is why we prepare each workshop process exclusively for the client.

There are thousands of methods that can be used during such workshops. Each one aiming to solve a little bit different kind of a problem or provide a little bit of different output. Every case is different so we will not beat around the bush – without examining yours, we cannot prescribe a perfect solution. But, what may surprise you is that not every case requires workshops!

And that is why the initial contact matters. We want to get to know you, your expectations, what has been done already. We promise to be your companion but also a guide in this journey (so, as marked at the beginning of this article – we need to mark the destination). To provide you with the best experience and be able to propose a smooth but still exciting product development process, we have to consult first. Together, we will figure that out 🙂

TestCamp − leveling up our QA skills

The key to providing the highest quality of products is the constant growth of testing expertise. That’s why the whole QA team at iteo decided to attend this year’s TestCamp conference and workshops. It’s one of the biggest software testing events and this year’s agenda focused on good testing practices, testing automation, non-functional tests, testing tools and QA specializations.

The event took place on September 13 and 14 2019, at Hotel Ibis Style Wrocław Centrum, Poland. It consisted of two parts – workshops and conference. TestCamp 2019 invited 20 excellent speakers from the industry to do their presentations. 500 attendees took part! If you couldn’t be there, we invite you to read our highlights.

Day One – Workshops

On the first day of the event, 12 workshops were held at the same time. Because they touched upon different subjects, each team member could grow their skills in the area they were most interested in. They could choose from: mobile applications testing automation including API testing with Gherkin notation, SQL, C#, Java or Python, safety testing or even artificial intelligence! 

One of the security workshops was dedicated to Quick Sprint Security. Using Kali Linux and OWASP Broken Web Apps, the participants could learn how to detect vulnerabilities, Cross Site Scripting, SQL Injection and Cross Site Request Forgery, all under the guidance of a practitioner.

During network security and socio-technical attack dangers workshop, attendees could find out:

  • What are the functionalities of different operating systems
  • How to encrypt data
  • What kinds of firewalls and anti-malware systems are there 

And many other technological solutions that can raise data safety.

“Data mining for testers” was another insightful workshop that allowed its participants to gain practical skills in Machine Learning with the usage of KNIME tool. It helps to predict which areas of tested software are most likely to have bugs.

The organizers also prepared an interesting workshop on automation. The theme was the usage of Appium and Oxygen tools to create automated mobile app tests based on the best practices. Another workshop included an automated API test using Rest Assured that allowed the attendees to gain practical skills on creating understandable scenarios in Gherkin notation.

Thanks to workshop formula, all participants could receive not only theoretical knowledge but also a chance to use it in practice doing their tasks. Specialist mentors were watching over and helping when necessary.


Day Two – The Conference

As always, the event was happening at Hotel Ibis Style Wrocław Centrum which is conveniently located close to Wroclaw’s main train station. It is also a very comfortable facility for any conference with that many attendees. TestCamp 2019 was divided between 3 themes: Skills, Trends & Tools and Automation. The topic of first speech for all participants was titled “Project like The Tower of Babel – effective communication from the perspective of a tester” and was presented by Alicja Polska. She underlined how essential good communication is for testers and gave useful tips on how to make it more efficient. She also talked about the difference between good and bad communication practices.

Further prelections were happening three at a time, accordingly to mentioned themes. This way each attendee could pick the one that was closest to their professional interest.

As part of Skills theme, the topics touched upon a wide range of competencies that are needed at the position of software testers:

  • Effective conclusion drawing based on detected bugs
  • Seeing own mistakes as chances to learn and grow one’s skills 
  • Test Manager’s areas of responsibility
  • A talk through one lecturer’s career path, complemented with profession information and desired characteristics of a pentester

Lectures from this theme have also brought up the growing popularity of IoT and its challenges among testers. We could also find out what kinds of problems testers can encounter when doing performance testing, based on the example of Allegro’s team that was responsible for customer support services. 

Meanwhile, Trends & Tools theme included:

  • Basics of IoT hacking with the usage of pentesting in tests
  • Automation for business and trends in this area
  • Implementation of Continuous Testing and ways to create a stable testing environment for mobile apps

Speakers also presented the most popular tools for app tests and how to effectively use them in our everyday work.

Many interesting lectures were conducted through the Automation theme for all automating testers out there. Advantages and drawbacks of the automatic navigation desktops were discussed. Good practices for automatic test using tools like API, Selenium and Docker were presented, including information on how to add them to the tester’s everyday work. It also touched the subject of automatic tests implementation into projects with the engagement and support of software developers. BackStopJS tool was introduced. It helps to avoid visual regression of www apps. We could also learn what are headless browsers and how to test web applications using them.

At the end of the conference, Jakub Rosiński did a standup titled “Testing is like having sex. If they’re both good, they have a lot in common”. It was a great way to energize the audience after an intense day.

Festive wrap-up of the conference included acknowledgments of the presenters and attendees but also prize handovers for the winners of the “best testing dry joke” competition. All the jokes could be proposed by participants during the event.

Diversity of topics was the reason why everyone could attend this conference – including beginners but also experienced testing specialists. TestCamp was extremely interesting and it allowed everyone to level up their competences. It also inspired us to keep growing within the field of software testing.

To sum it up

For each of our teammates, it is very important to constantly grow our knowledge and learn new software testing skills. We want to achieve the highest quality of our work.

Being a part of workshops and TestCamp 2019 conference was a very valuable experience. Its complex and interesting agenda allowed us to pick the most interesting topics for us. All the issues that were discussed during presentations and while networking with other participants were a proof that our work model at iteo and our expansion plans are according to the newest technological trends of mobile and web app testing. At the same time, going there together was a great opportunity to integrate the QA team and it was awesome to spend time together in the city after the event.

If you want to develop excellent, bug-free software – don’t hesitate to contact us. We’re here to help!

What Future Holds for Software Developers

A lot of people say that “the future is now”. Some are excited about it, others – not so much. The rapid growth of technological innovations makes us wonder if scenarios from sci-fi movies could become a reality sooner than we expected, if at all.

In this article, we are exploring a couple of future predictions and how they can influence the profession of a software developer.

Will robots replace us at work? Let’s find out!

How Fast is Technological Growth?

In 1965, Intel’s CEO Gordon Moore observed a thought-provoking phenomenon. Approximately every 18 to 24 months, the number of transistors in a dense integrated circuit would double. This rule was named Moore’s Law and it described other computer industry growths – hard drives’ capacity, RAM sizes, networks’ bandwidth and much more. Although this law doesn’t apply anymore, it explains well why we were experiencing rapid technological growth in recent decades. 

Dynamic changes within the IT industry change the way we create and use digital products. Developers are an integral part of this universe, as they are responsible for programming machines we use daily – smartphones, TVs, even coffee makers. They also teach those things to learn, remember and understand stuff. Finding ourselves in a reality where AI replaces men in some aspects of life doesn’t seem that unlikely.

Devs vs. AI

Artificial Intelligence is already capable of writing code, but industry experts don’t think it will replace humans. They rather see it as cooperation instead of competition. Software developer’s skillset needs to evolve to achieve better results with the help of AI.

Why do we think AI won’t replace developers? Here are a couple of reasons:

  • Providing base material – right now AI can generate code but it needs to learn how to do it first. To start this process, someone has to give it a resource it can analyze. This way developers can program AI in a way that it’s able to build certain products.
  • Abstract thinking – as for now, AI doesn’t understand concepts like business values, demand for certain functions or marketing goals. Machines need to learn to think like a programmer. Until it happens, people will have to tell them what to do. This way dev houses will be able to deliver custom products compatible with their clients’ needs.

To put it simply, people know what they need to code and why. AI can make it faster and more efficient. Unless AI learns how to think like a human, we shouldn’t worry about our future as software developers.

And we will give it a try and work with it when the opportunity occurs.

The Era of DIY

Website generators and editors are considered another potential threat to the profession of software developers. Wix, GoDaddy, Squarespace, and others allow users to build their online products in a matter of seconds. They can set up landing pages, full websites, e-commerce stores, blogs and more – no technical knowledge required.

What might be tempting about using a generator instead of hiring a digital agency is a budget. Those tools usually charge a small monthly fee. With easy-to-use editors and ready-made templates with many customization options, it seems that the balance between quality and price is just fine.

But there are many drawbacks to these solutions:

  • The website you create is not completely yours – it is owned by another party: the company that is the owner of the service. That means it can delete it without any reason, restrict advertising policy and much more.
  • It has limited functions – website generators advertise their fully customizable templates but there is no way you can edit everything without any tech knowledge. Those drag-and-drop elements are built with code as well, which means they have a certain purpose and if you need something more, you need to change their source material.
  • They still require some tech-savviness – to use page generators you need to learn the system first. In the beginning, you will probably spend hours trying to build websites that look the way you want them to. This time could be allocated towards other business-related activities.

Hiring a digital agency, even if more expensive, can be much more efficient. It will result in a high quality IT product that can be customized according to your business needs. Also, you will receive technological support every step of the process. Not to mention you will save all this time – and you can use it to promote your business, improve products and services or search for new clients.

So, will website generators replace seasoned software developers? Definitely not. Versatile knowledge, wide skillset and abstract thinking (again!) is what will help them keep the job in the long run.

Job Market Competition

Teaching programming at schools will probably become a standard, sooner than later. That’s because it is required more and more often, even at workplaces that are not considered a part of the IT industry. If coding will become an ordinary ability, just like reading, writing and math – we will have much more developers on the market.

There might be a slight concern that we will produce an overflow of software development specialists. It will result in more strict recruitment processes, lower salaries and fewer work benefits. If everyone can code, there’s nothing special about it, right?

That being said, it’s highly unlikely it will happen. The right balance will be preserved because of technological growth. The number of industry jobs will be constantly growing with mentioned AI, autonomous cars, smart homes and other IoT products to be programmed and controlled. So it seems that developers will be needed more than ever. And the experienced and skilled ones will have much more to offer.

At iteo, we are certain that dev houses with their seasoned employees are safe for upcoming years. Our goal is to always be on top of things so we invest in training, conferences and other sources of knowledge. All of that in order to be prepared for what the future holds. We are excited to be a part of it.

Is .NET Core a Right Choice for Startups?

After years of successful expansion of .NET, the Redmond giant decided to create a new solution called .NET Core. Now we can say it was a breakthrough. Multi-platform functioning, open-source, support from community and Microsoft, strong typing, rich libraries and perfection of C# are a few features that make this product extraordinary. But is it special enough to take one’s chances and use it for startups?

Picking the right technology for MVP

Most startups prefer to create PoC (Proof of Concept), also called MVP (Minimum Viable Product) as the first phase of a project. This prototype’s purpose is to prove that the idea is sensible and that the product is possible to develop. It can be introduced to potential clients with minimum effort, without a need to prove its worth.

The real question is – which technology would be the best to build the MVP? You will hear different answers:

  • “Python is just great, Django makes the administration panel build itself…”
  • “Node is perfect, it has great community support, many libraries and what’s most important – it’s trendy!”
  • “Only Ruby on Rails, many startups became successful because they decided to go with this technology.”

All statements above are true. No matter which technology and language we pick, what matters is correct architecture and high code quality of the product. It truly is the key to success.

The next step after creating the MVP is implementing additional elements. The results can go in different ways. Modules developed with a lick and a promise won’t be enough and they will most likely have to be rebuilt. It will cost you time and money – sometimes even more than doing a custom product from scratch. And when the deadlines are short, a new version of the product won’t preserve code integrity. That creates technological debt. This way expenses grow and team morale decreases.

The good news is that this doesn’t have to happen. To avoid it, it is crucial to pick well-suited technology and programming language during the first phase of the project. It will truly influence the product’s longevity and quality. Strong typing, code compilation and refactorization tools are just a few features that will make implementation successful. They will also help maintain and expand the project.

Another good practice is to watch and learn from the best. Which technologies are used by big enterprises, banks, government, etc.? Usually it’s Java (a lot of frameworks and languages pattern after Java – eg. PHP Symfony framework was inspired by Java’s Spring) and .NET. So if those industries already tested these solutions, we can use them while working with startups.

Why is .NET Core the right choice for startups?

In November 2014, Microsoft launched the .NET Core platform. It was a new version of the famous .NET Framework, but also a new product, including one of the most important features – being cross-platform. While .NET Framework runs only on Windows, .NET Core is available on macOS and Linux, too. .NET has already been considered an excellent and foolproof tool, but with this expansion, its capabilities grew significantly. It was a chance to sustain a great reputation and to gain even more popularity.

Not worrying about the limitations of just one operating system allows presenting better custom offers that correspond with the budget and business needs. Finding a suitable server to develop an app is a piece of cake. .NET Core apps also work splendidly with open source servers, eg. Nginx or Apache and commercial business solutions like IIS (Internet Information Services).

None of the startup-friendly languages should require paid programming environment. .NET Core is not an exception here. Coding can be done in a simple text editor and then compiled with a console. Additional tools like Microsoft Visual Studio, JetBrains Rider, ReSharper, etc. can be purchased accordingly to the budget.

As a C# programming language known for strong typing, .NET Core gets another point for being excellent for startups. Languages like that allow implementing architecture and project patterns for modular and scalable development which results in high code quality. This way the process of adding new developers to a project is also much quicker.

Ready-to-use components available with .NET Core can reduce the number of bugs that might occur when developing software. Those libraries are verified and limited – you don’t need to search and analyze hundreds of them. Usually, we just need to check a couple before finding the right one.

As a Microsoft’s product, .NET Core includes dedicated libraries for business components support (eg. Active Directory) and cloud platforms (eg. Azure). It’s a unique feature that distinguishes it from other technologies. Easy-to-use cloud solutions are particularly useful for startups. They allow kickstarting cooperation between a company and a software house without building new architecture. 

Especially integration with Microsoft Azure has lots of advantages, including:

  • Easiness of scalability
  • Pricing that includes only real-time use of resources
  • Smooth integration with other Microsoft services
  • Automatization of deployment and maintenance

What’s important is that Microsoft Azure is the second most popular cloud service for business in the world. Its dynamic growth is an advantage.

Last but not least, Microsoft’s platform is highly popular. Its constantly growing number of users creates a demand for more .NET Core specialists. Training materials are easily available. Development processes are getting simpler and faster. Competition between software houses increases which reduced the cost of programming in this language. For startups, that’s a significant benefit.

To sum it up…

Why do we think .NET Core is amazing for startups? Because it has everything a startup might need. Choosing the right technology for a digital product is not easy. And it’s the key when there is a limited budget and expectations for short delivery time. Let’s not forget that a prototype of a product should be ready for expansion and maintenance.

All those essential advantages are present in .NET Core. It’s the right choice if we are aiming for success in all phases of the project. Our vision assumes that every startup can kickoff with an MVP and become an enterprise in the long run. We create prototypes for our clients with this business-oriented approach in mind.

How Office Space Impacts Our Workflow

Welcome wall with iteo artwork

First things first

Rebranding, particularly while scaling up rapidly, is almost never an effortless nor a breezy process. With iteo’s new visual identity creation, the case was no different. Especially when the assignment that needed to be covered was not exclusively the redesign of the company’s logo but its complete external communication. 

Facing this fact, iteo’s team of talented individuals raised to the challenge and managed to create a new identity that went along with our core values and slightly edgy character. This is how a new iteo sign came to life.


Iteo's new logo GIF

The perfect spot

The freshly designed logo became a solid foundation for a brand new identity that smoothly spread across our new corporate website, printables and digital marketing media.

Having a new sign, we genuinely related to, and a new website, that we were so proud of, the only question that remained was: why not go all the way and change the office space too? We were already jamming up as it was but needed to face this upcoming challenge with an open mind to ensure we created a space that iteo’s staff would enjoy coming back to on a daily basis.  

First, we had to set on the location. It turned out to be quite an obvious decision to rent space at a newly built office block at Mikołowska 51 in Katowice. Company’s roots lay in the nearby area which was iteo’s home for the past five years. Starting with only ten employees, now we faced accommodating over a hundred.


Iteo office building

Finding the visual balance


Our teammates in the kitchen

As usual at iteo,  we were given a lot of decision making freedom and opportunity to create space that best suited our needs. In order to define them, like with any other project, we conducted our research first. That helped us to design both functional and creatively stimulating workplace.


Iteo office space

We’ve discovered that a lot of speculations have been made in the past few years debating the pros and cons of open spaces. Gathered data suggest that open-plan offices push employees towards constant multitasking, having them focus both on their job and everything that surrounds them. After 8 hours of constant focus, they felt drained and their work product lacked efficiency. On the other hand, we’ve learned from working simultaneously in a few separate offices, that dividing space too much made us communicate less effectively and even stopped us from establishing natural workplace friendly relations.


Working iteo team

The solution to this problem was to divide our open space into smaller team areas with only partly transparent walls. By doing so we managed to create a space that was both open and private, where staff could feel like a close-knit team and have secluded space as individuals. This way our office not only still felt very roomy and spacious but common noise pollution got reduced drastically.


Iteo workspace

Natural mobility


Working at iteo

Humans by nature we are made to move around, which is why the standard 8-hour long system of working beside the desk seems counterintuitive.

At iteo, we encourage employees to change both their working positions and stations. From standing desks, that are proven to be a healthier alternative to regular ones, to work lounges where comfy sofas and bean bags are situated.


Working on bean bags

To avoid visual pollution, that impacts the team’s concentration abilities, we acquired modern yet simplistic furniture. Minimalistic adjustable chairs and quality gear undeniably increases employees’ comfort which is our top priority.  We also moderated the number of accessories in shades of iteo’s corporate colors of blue and orange in order to encourage teammates to fill the space with their personal stuff.  


Team in the kitchen

Story drawn in a single line

Although this industrial building was a perfect personality fit, it definitely needed some warming up to reflect iteo’s spirit. We did not want to fill the space with common cultural references that could be purchased online when so many talented people at iteo could make our very own. 


Iteo kitchen artwork

As a result of our collaboration, we created dozens of gorgeous illustrations that now hang on our walls. Each one of them draws, using a single blue line, either a memory from company’s history or visually corresponds to things that make us laugh or simply inspire us.


Illustrations from the office

Shared space and interests 


Kitchen space

Iteo’s employees happen to be very versatile and to meet their diverse needs multiple spaces have been created to promote either social interactions or to respect their solitude rights. They can either fly solo or work face-to-face, whether they have individual status calls or shared conference meeting.


Chill room

But it’s not just work and no fun at iteo. If you feel like crushing on the sofa and watching a game, the chill room is just a place for that. Having too much energy bottled up from all the sitting? How about a game of foosball or table tennis? 


Foosball room

Got all heated up? Take a moment outside and relax on the lounger at our terrace with a beautiful industrial view.


Terrace

Green is the new orange

We’re huge fans of nature which is why we decided to surround ourselves with plenty of various plant life. As many studies show, they not only increase work productivity but overall human happiness. 


Plants in the office

What can make plants even more beneficial is their noise-absorbing function. That’s why while walking through our office building there’s a feeling of growing a future urban jungle set in mind. 


More of our plants

Let it glow

We’re proud to have multiple locations all over Poland, one based at its heart, Warsaw, one among the stunning mountains of Bielsko-Biała, but since our HQ is based in Katowice we could not discard the fact that the city has been known for being the southern capital of neons. We wanted to be a part of this legacy and had custom made iteo neons made by a well-known Silesian company Neony Irsa


Iteo neon in the office and outside

Room to grow

Our new workspace design positively influenced mostly our productivity and certainly benefited overall collaboration and communication. Crating a flexible place that is both transparent and makes room for self-management helped us to grow equally as a company and individuals. 

No symphony can be played by a single musician and iteo wouldn’t be the awesome place it is right now without the help of every teammate involved. Interior design co-created with the help and expertise of Architect Michał Malara.


Iteo team at the office

Iteo certified as a Gold Microsoft Partner


We are proud to announce that Microsoft has recognized iteo as a Gold Certified Partner in Application Development. This is the highest certification possible that confirms we meet professional standards and demonstrate technical knowledge and expertise. Gold Partners have a close working relationship with Microsoft and can serve their clients better than ever before through numerous benefits and opportunities.

The certification is a part of the Microsoft Partner Network Program for companies from around the world that want to improve upon Microsoft solutions and technologies. To achieve Gold Competency, at least four employees must achieve the Microsoft Certified Solutions Developer: App Builder certification. This certification validates not only the skills needed to build modern applications and services but also to manage and deploy it through Microsoft-managed data centers using Microsoft Azure.

Only a small percent of all companies working with Microsoft can achieve the Gold status in various fields and prove they are a partner with the professional IT expertise.

What are the benefits?

Achieving the status of a Gold Certified Partner comes not only with prestige, but most of all – with great benefits for the clients and company that holds it.

As a part of the network membership, we have now exclusive access to Microsoft tools, utilities, and toolkits. The iteo team can partake in Microsoft’s ongoing training programs dedicated to their field of expertise, like M365 – Security or Azure Fundamentals (to name the few) as well as receive the continuous online technical support. We are now closer than before to Microsoft’s solutions and have a unique chance to learn from and grow with one of the biggest software companies in the world.

But most of all, having the certificate serves our clients. Since the relationship with Microsoft tightened through the certificate, we have now unlimited access to the newest tools and software in the early stages of their development. That means no matter what project we do, you are always sure that it meets the Microsoft standards. Working with Gold Certified Partner means choosing the experienced, dedicated team, utilizing the newest Microsoft technologies and creating a project that meets and exceeds your expectations.