#theTIQQEcode

Finally 2020 is coming to its end!


This year has not been as we planned. We sat together for the first time on the 2d of January in Örebro and made big visions of how this year would be. We had a great Kick-off in mid January where all employees of TIQQE set the scene for the year. We had workshops, made dinner together and it felt great! A lot of laughter, warmth and forward-thinking. February went on as planned and then came March.


In March we were heading for the Philippines. We had planned this trip thoroughly, meeting up with the team, having a kick-off in Cebu, talking about leadership and getting to know eachother better. 
A few weeks earlier we started to hear about a mystic flu that spread across asia. The afternoon and night before our departure we started to wonder if it was smart or not. The bags were packed, passports ready and movies downloaded to the iPads. Then it started. COVID.
The 13th of March we communicated to all our customers that we intended to keep our employees safe and that we would stop travel to meetings and assignments.
From that day we also started to encourage our employees to work from home.

With that said, we’ve had a fantastic year. Strange but great. When we realized that this wasn’t anything that would pass quickly we made some guiding decisions:

  • We wouldn’t back on anyone that we’ve signed up to work with us
  • If we had to do economic cuts, we would take us in the Supportgroup ( our leadership team ) first.
  • At all cost, keep our employees safe as far as we can control

So, this year we’ve employed 12 more TIQQE friends in Sweden (three starts Q1 2021) and we engaged 7 new friends in the Philippines. 
We have done a lot online. Lunches, monthly meetings, a summer party with an online escape room, and year-end meeting with reflection. We drove around Sweden walking and talking one-on-one and delivering prosecco so we could celebrate later online.
TOGETHER
All the things we’ve done with our employees and customers have been successful because we do it together. No one has been in this pandemic-year alone.
So when we sum this year up, we want to THANK YOU ALL. All customers for feeling TRUST in us, so we have been able to keep collaborating and develop AWESOME stuff without physical meetings & all TIQQErs for putting up with us and having the COURAGE to have faith in our way of working. Ùbúntù – we are because We are. Let’s make 2021 better than 2020 together!
Have a wonderful Christmas & a Happy New Year  

Jacob & Sofia

#theTIQQEcode

#theTIQQEcode

Our Vision at TIQQE is Vision Zero when it comes to employee and customer turnover. What do we do when one of our employees decides to leave us? 


Well, we make sure that we’ve checked the following boxes

  • We’ve explored every possible way
  • It’s been a really really hard decision to make
  • It’s what’s best for the employee

In this blog we would like to share a story about our employee #5 Benjamin Bandy  who has decided to leave TIQQE. With that being said, he’s leaving us in person but never in our hearts.

Benjamin joined TIQQE just when we were starting up as a company, it was the first of september 2018.

Benjamin has been an employee and a friend who has always lived the values which are so important, he is nice, caring, sees the potential in everyone and always a pleasure to be around.

He is also a kickass techlead and developer who has always been highly appreciated by our customers. 

So why does someone that lives and breathes our values want to leave? Well, two years ago Benjamin met the love of his life. Unfortunately for us she lives overseas, in the US. For some unknown reason she doesn’t think that Sweden is a fantastic place to be (coming from Silicon Valley and working for Roblox), so in a couple of weeks Benjamin will take his belongings and move 7.921 kilometers away. 

Benjamin has been an amazing colleague for everyone at TIQQE, he has been a great friend and will be hugely missed by us all. However he has promised us to keep his Slack account so we can still frequently be in contact with him and not to forget that every friday morning at 4am he will wake up and join us for our weekly Quake tournament.

And we’ve created a mini-Benjy that we’ll keep in the office until you come back.

Even though he will be a few more kilometers away from us he will always have a special place in all our hearts. We wish you all the best Benjamin and hope that you come home soon! 

Jacob & Sofia

Development

TIQQE leadership program


Last september we started the TIQQE Leadership program. In this post I am going to tell you about my personal experience and reflections I did about it.


Change is constantly in our life. You deal with changes all the time: in your job, in your everyday life and in your relationships, with others and with yourself. 
Everything changes, everything evolves and you can’t stop that.
The only way to not be left behind, stuck in your safe bubble you have hardly built, is to embrace changes, to be a part of them. 

Embracing changes forces you to continuously question yourself and actively decide to make actions that could lead to failure, loss or even force you to start from scratch, again. And sure, that can be scary but it is the only way to grow and to improve yourself.
Embracing and being part of change is fundamental in a developers life.
In fact, IT leads the evolution and in the last two decades we have witnessed a real and true revolution in the sector.
Software has pervaded our lives and reshaped them.

The way of developing software evolved, so did the role of the developer.
Working in a team, having good communication with colleagues and customers, feeling empathy, being flexible and able to adapt, listening and supporting, being nice, depersonalizing, taking responsibilities and having leadership skills, are all qualities that a developer should have to be successful. 

Mastering one programming language to develop a certain kind of product on a specific infrastructure is not enough and valuable anymore.
What is important instead, is the attitude to never stop learning, to start from scratch again with a new technology.
Being ready and prepared to challenge yourself is precious. 
Despite the name, soft skills are not easy to master at all, and in order to achieve some of them you really need to be prepared to work on yourself.
Not all the IT companies have realized that yet and above all not all of them dare to change.

Receiving the invitation to join the TIQQE leadership program was for me, like receiving a message saying “we believe in you, we are investing in you”.
That was really nice. I got really thrilled about the idea that I was receiving a great opportunity to work on and improve my soft skills.
The program had the aim of working and practicing with some really simple but powerful tools and making their use a habit, something that is a natural part of our way to work and think.
The tools give us the ability to see different perspectives and help to work on ourselves not only personally but also in a team context and in a company context.

The best part of the experience was for me, the possibility of sitting together in the same room and speaking about ourselves. It gave us the possibility of getting to know each other, and learning from each other. I thought a lot about what my colleagues have told during the sessions we had and I tried to bring some of their perspective in my life.

I think it was an amazing experience that gave me a lot and that showed me how much I can grow and improve both personally and professionally, for myself and for the people around me.

Development

How to make it work

I joined a new team from the beginning of this year at one of our customer. This project is more complex compared with my previous work since it involves more team-members and larger environments. I learnt a lot from this project and I would like to share some experiences that helped me grow.

1. We work closer to the customer.

My previous projects involve very little communications with customers. The customer delivery did most of the work. Differently, the current project requires the customer and the development team working closely. We meet at least once per week, either face to face or online (due to the current COVID-19 situations), to gather the user’s feedback with the following aspects from different locations,

  • User experience on current version of the product
  • Bugs and critical incidents reported by service desk
  • New feature requirements

Meanwhile the development team shows the progress to our customers. In my opinion, it is an efficient way to understand each other in both directions, and this helps us meet the customer requirements in time.

2. We work closer to the different teams.

My previous tasks require me working individually, while this project involves several teams with various assignments and co-workers from different time zones. That don’t cause us any trouble, since we find our way to work smoothly among the teams and individuals as follows: 

  • We start our job with a scrum daily, and it triggers my day by making a proper plan for myself and also keeping track of others’ progress. 
  • People in our team are nice and cooperative, we are willing to overcome obstacles together and share ideas with each other. When I was new in the team, I did the pair programming from time to time with senior members. The pair programming helped me to quickly understand the existing system and new knowledge.

3. We have stricter control of the code quality.

Code quality is important, as it impacts how secure, maintainable and reliable your codebase is. Particularly in this complex project, multiple teams can share the same repository. In order to improve the code quality, we have the code review and do the code refactoring. And I’ve gotten used to the “test-driven development” style, I realize the benefits of covering code by unit tests: 

  • Easy to troubleshoot if the codebase is broken due to a new submitting
  • Easy for others to understand the code being tested
  • Reduce the bugs and design flaws in the early stage

4. We have more comprehensive access to framework features and technologies.

It is always fun to learn new stuff. And I really appreciate that I have such an opportunity to learn AWS technologies by participating in this project together with awesome teammates.

Development

Fullstack or not?

Fullstack vs. frontend and backend separation. This post is about how to optimally organize your team to build solutions that deliver as much business value as possible. This includes the most important aspect, the user experience.

Let’s say you have a team that should build and run some kind of web service that is presented to users both as a web page and an app that exists in the app stores.

One of the questions is how much specialization there should be within the team. Does every member of the team work on everything? Do you have specialization? Lets for this post limit the discussion to developers in the team. Most teams will need specialized roles for designers, testers, project owners, stakeholders, etc but that is outside of the scope of this post.

From my experience there are 2 major ways I have seen this organization happen naturally:

Fullstack or Frontend / backend separation. If having the choice, what way is best for your team?

Fullstack

Every developer works with everything needed to develop and run the solution: the same people do the HTML and JavaScript, down to the (server side) integrations with business critical (in some cases legacy) systems. These systems provide the actual value to the webpage or app.

Fullstack does not preclude having a UX designer involved, that does the design in design tools, but the designer doesn’t do the actual implementations. And in my experience the actual implementation of a design is very significant for the end result.

Pros

A single developer or developers that have high bandwidth communication can work very efficiently on a single feature and deliver it into production with a minimum of coordination and communication. This can be a great advantage if time to market is the most important thing for example.

Cons

As a developer dealing with integrations against internal systems it is unavoidable that you take a perspective of how the internal legacy systems at a business works. This will likely impact user experience.

It is hard to find developers that are good in both frontend and backend. Some developers with lots of backend experience might overstate their frontend skills, and vice versa. In a worst case this could result in a very bad user experience.

This comes from the fact that you will know all the internal complexities. It will leak into the user interface, and also developers will be tempted to cut corners and implement a user interface for the legacy system(s).

Frontend & backend separation

You have some developers that are doing frontend only, that is the HTML/JS/CSS or implement the iOS/Android app code.

Then you have the backend developers that do the “web-back end” that is code that is running server-side in the public cloud or datacenter, and provides the web facing APIs

Each group within the team owns the technical architecture and evolution of their respective part.

Pros

Frontend developers won’t know so much about internal systems and what functionalities or apis they provide. They will instead be able to think clearly from users perspective in every case.

Frontend developers can fully focus on growing skills with web frameworks and new and evolving frontend technologies and app native apis. Same thing for backend developers, they can fully focus on building maintainable and operationally stable backend API:s.

Cons

It is less efficient to deliver new functionality into users hands. More coordination is needed to make the solution work within the businesses constraints and current capabilities, and at the same time implement the user experience that is optimal.

Some developers will find this way of working less satisfying if they are interested in both frontend and backend technologies.

Conclusion

In my experience, if you prioritise user experience the highest, like in the case if you implement a B2C solution, frontend / backend separation is best.

If User experience is not of the highest importance, or if your target market is “power users” that to some degree know the internal workings of the business. This is more common in B2B scenarios. Fullstack might be best for your team.