<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:media="http://search.yahoo.com/mrss/"><channel><title><![CDATA[smart team]]></title><description><![CDATA[smart team]]></description><link>https://blog.smart-team.tn/</link><image><url>https://blog.smart-team.tn/favicon.png</url><title>smart team</title><link>https://blog.smart-team.tn/</link></image><generator>Ghost 3.42</generator><lastBuildDate>Tue, 16 Dec 2025 05:13:02 GMT</lastBuildDate><atom:link href="https://blog.smart-team.tn/rss/" rel="self" type="application/rss+xml"/><ttl>60</ttl><item><title><![CDATA[Webinar: "Counting on time"]]></title><description><![CDATA[<p>This is a two-hour webinar on the subject of time accounting. COVID-19 has brought new needs to the workforce as many of us work from home. There are many different project-management tools available for distributed project management: Monday, Planday, etc. This presentation will revisit an old technique -- capacity planning</p>]]></description><link>https://blog.smart-team.tn/counting/</link><guid isPermaLink="false">60b764e56023130001744d43</guid><dc:creator><![CDATA[Amel Bhar]]></dc:creator><pubDate>Wed, 02 Jun 2021 11:13:25 GMT</pubDate><media:content url="https://blog.smart-team.tn/content/images/2021/06/services--2-.png" medium="image"/><content:encoded><![CDATA[<img src="https://blog.smart-team.tn/content/images/2021/06/services--2-.png" alt="Webinar: "Counting on time""><p>This is a two-hour webinar on the subject of time accounting. COVID-19 has brought new needs to the workforce as many of us work from home. There are many different project-management tools available for distributed project management: Monday, Planday, etc. This presentation will revisit an old technique -- capacity planning -- and see how it can be used today for time-travel in project management.<br></p><p>Subjects:</p><p>1) Capacity planning and forecasting<br>How to design time-sheets that they be meaningful, both from the workers and consumers perspectives.</p><p>2) Current software offering for distributed project task management<br>Planday, Monday, etc. We will look at different management tools and consider different use cases.</p><p>3) Round table of those present<br>Participants will expose their own manner of capacity planning, or lack thereof, and needs. </p><p>On 06/07/2021 at 15h:30 CET, this webinar will be presented by Chris Mann, an expert in capacity planning applied to service industries with experience from Pole-Emploi to Wonderbox.</p>]]></content:encoded></item><item><title><![CDATA[Composer 2: Better, Faster, Stronger.]]></title><description><![CDATA[<p>Composer is the number one Dependency Manager for PHP, It's about to turn 8 years old, and the second major release is coming out!</p><p>Bringing in more features, better performance, while keeping compatibility with your pre-existing workflow.</p><!--kg-card-begin: markdown--><h2 id="performance">Performance</h2>
<!--kg-card-end: markdown--><p>One of the first things you would notice when upgrading to Composer</p>]]></description><link>https://blog.smart-team.tn/composer-2-better-faster-stronger/</link><guid isPermaLink="false">608905323615cf000101311e</guid><category><![CDATA[Development]]></category><dc:creator><![CDATA[Seifeddine Gmati]]></dc:creator><pubDate>Wed, 12 May 2021 06:12:46 GMT</pubDate><media:content url="https://blog.smart-team.tn/content/images/2021/05/2021-05-11.jpg" medium="image"/><content:encoded><![CDATA[<img src="https://blog.smart-team.tn/content/images/2021/05/2021-05-11.jpg" alt="Composer 2: Better, Faster, Stronger."><p>Composer is the number one Dependency Manager for PHP, It's about to turn 8 years old, and the second major release is coming out!</p><p>Bringing in more features, better performance, while keeping compatibility with your pre-existing workflow.</p><!--kg-card-begin: markdown--><h2 id="performance">Performance</h2>
<!--kg-card-end: markdown--><p>One of the first things you would notice when upgrading to Composer 2 is that it is much faster than v1.</p><p>This is thanks to parallel download of packages and metadata.</p><p>How much faster?</p><!--kg-card-begin: markdown--><h2 id="benchmark">Benchmark</h2>
<!--kg-card-end: markdown--><p>For this benchmark, we are going to try and install dependencies for a small Symfony application.</p><!--kg-card-begin: markdown--><blockquote>
<p>The tool used in this benchmark is hyperfine, a rust command-line benchmarking tool.</p>
</blockquote>
<!--kg-card-end: markdown--><p>We will run the benchmark on PHP 7.3, 7.4, and 8.0-beta, so we can have a better insight on the improvements.</p><p>We will use the 1.10.13 release of Composer 1, and 2.0.0-RC1 for Composer 2.</p><!--kg-card-begin: html--><pre><code>
❯ composer --version
Composer version 1.10.13 2020-09-09 11:46:34

❯ composer2 --version
Composer version 2.0.0-RC1 2020-09-10 15:39:45

~/Projects/benchmarks
❯    
</code></pre><!--kg-card-end: html--><p>The first setup would be of course to clone our repository.</p><p>For our test, we are going to pass 3 different options to composer when installing dependencies:</p><!--kg-card-begin: markdown--><ul>
<li>--ignore-platform-reqs to ensure that composer does not fail when using php 7.3 and php 8.0-beta as the project requires php 7.4</li>
<li>--no-cache to ensure that composer does not use local cache</li>
<li>--no-scripts to ensure that composer does not run post-install scripts that might sabotage the benchmark result.</li>
</ul>
<!--kg-card-end: markdown--><!--kg-card-begin: html--><pre><code>
❯ OPTS='--ignore-platform-reqs --no-cache --no-scripts'

~/Projects/benchmarks/composer develop
❯
</code></pre><!--kg-card-end: html--><!--kg-card-begin: html--><pre><code>
❯ php --version
PHP 7.3.20 (cli) (built: Jul 20 2020 14:32:38) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.20, Copyright (c) 1998-2018 Zend Technologies

❯ hyperfine --runs 5 "composer install $OPTS" "composer2 install $OPTS" -p 'rm vendor -rf'
Benchmark #1: composer install --ignore-platform-reqs --no-cache --no-scripts
  Time (mean ± σ):     86.054 s ±  7.828 s    [User: 2.721 s, System: 1.387 s]
  Range (min … max):   79.761 s … 95.285 s    5 runs

Benchmark #2: composer2 install --ignore-platform-reqs --no-cache --no-scripts
  Time (mean ± σ):     44.043 s ±  5.979 s    [User: 4.184 s, System: 2.074 s]
  Range (min … max):   38.734 s … 51.462 s    5 runs

Summary
  'composer2 install [...]' ran 1.95 ± 0.32 times faster than 'composer install [...]'

~/Projects/benchmarks/composer develop
❯
</code></pre><!--kg-card-end: html--><!--kg-card-begin: html--><pre><code>
❯ php --version
PHP 7.4.8 (cli) (built: Jul 17 2020 17:13:14) ( ZTS DEBUG GCOV )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies

❯ hyperfine --runs 5 "composer install $OPTS" "composer2 install $OPTS" -p 'rm vendor -rf'
Benchmark #1: composer install --ignore-platform-reqs --no-cache --no-scripts
  Time (mean ± σ):     92.589 s ±  3.226 s    [User: 9.960 s, System: 6.585 s]
  Range (min … max):   89.983 s … 97.664 s    5 runs

Benchmark #2: composer2 install --ignore-platform-reqs --no-cache --no-scripts
  Time (mean ± σ):     57.402 s ±  2.082 s    [User: 15.724 s, System: 10.817 s]
  Range (min … max):   53.807 s … 58.836 s    5 runs

Summary
  'composer2 install [...]' ran 1.61 ± 0.08 times faster than 'composer install [...]'

~/Projects/benchmarks/composer develop
❯    
</code></pre><!--kg-card-end: html--><!--kg-card-begin: html--><pre><code>
❯ php --version
PHP 8.0.0-dev (cli) (built: Sep  9 2020 17:26:12) ( NTS DEBUG GCOV )
Copyright (c) The PHP Group
Zend Engine v4.0.0-dev, Copyright (c) Zend Technologies

❯ hyperfine --runs 5 "composer install $OPTS" "composer2 install $OPTS" -p 'rm vendor -rf'
Benchmark #1: composer install --ignore-platform-reqs --no-cache --no-scripts
  Time (mean ± σ):     88.870 s ±  1.857 s    [User: 7.997 s, System: 7.312 s]
  Range (min … max):   85.770 s … 90.725 s    5 runs

Benchmark #2: composer2 install --ignore-platform-reqs --no-cache --no-scripts
  Time (mean ± σ):     54.801 s ±  5.322 s    [User: 12.019 s, System: 10.870 s]
  Range (min … max):   49.549 s … 61.305 s    5 runs

Summary
  'composer2 install [...]' ran 1.62 ± 0.16 times faster than 'composer install [...]'

~/Projects/benchmarks/composer develop
❯
</code></pre><!--kg-card-end: html--><p>When <code>curl</code> extension is present, Composer 2 will download multiple packages at the same time, make use of HTTP/2, and share TLS sessions and DNS responses between HTTP requests to speed up downloads.</p><p>It must be noted that parallel download can already be achieved with Composer 1 using the <code>symfony/flex</code> plugin, but you will still lack the other optimizations.</p><!--kg-card-begin: markdown--><h2 id="offlinesupport">Offline support</h2>
<!--kg-card-end: markdown--><p>Composer 2 allows you to disable network and rely completely on cache when possible: this is great if you have a slow internet connection, or you wanna run benchmarks.</p><p>To disable network for composer 2, you must set the environment variable <code>COMPOSER_DISABLE_NETWORK</code> to <code>1</code>, and <code>composer.lock</code> <em><em>must</em></em> be present in the current directory alongside <code>composer.json</code>.</p><!--kg-card-begin: markdown--><blockquote>
<p>Note: this disabled network completely for composer, not work as a fallback mechanism.</p>
</blockquote>
<!--kg-card-end: markdown--><!--kg-card-begin: markdown--><h2 id="rootconfirmation">Root confirmation</h2>
<!--kg-card-end: markdown--><p>Since version 1, composer warned users about its usage under root, as it might lead to security issues.</p><p>This is due to Composer plugins being able to execute code while installing packages, or updating.</p><!--kg-card-begin: markdown--><blockquote>
<p>You can read more about the issues you might encounter under root in composer at: <a href="https://getcomposer.org/root">https://getcomposer.org/root</a>.</p>
</blockquote>
<!--kg-card-end: markdown--><p>Composer 2 takes this to the next level by asking users to confirm if they really want to use `root` privileges and waits for their answer.</p><p>You can tell Composer not to ask for confirmation under sudo by using the `--no-interaction` / `--n` option.</p>]]></content:encoded></item><item><title><![CDATA[Webinaire "Le temps qui compte"]]></title><description><![CDATA[<p>Il s'agit d'un webinaire sur le thème de la comptabilisation du temps. Le COVID-19 a apporté de nouveaux besoins à la main-d'œuvre, car beaucoup d'entre nous travaillent à domicile. Il existe de nombreux outils de gestion de projet distribuée : Monday, Planday, etc. </p><p>Ce webinaire revisitera une ancienne technique de la</p>]]></description><link>https://blog.smart-team.tn/seminaire-du-jour-comptabilite-du-temps/</link><guid isPermaLink="false">608151b23615cf00010130ff</guid><category><![CDATA[Events]]></category><category><![CDATA[webinar]]></category><dc:creator><![CDATA[Amel Bhar]]></dc:creator><pubDate>Thu, 22 Apr 2021 10:50:43 GMT</pubDate><media:content url="https://blog.smart-team.tn/content/images/2021/04/services.png" medium="image"/><content:encoded><![CDATA[<img src="https://blog.smart-team.tn/content/images/2021/04/services.png" alt="Webinaire "Le temps qui compte""><p>Il s'agit d'un webinaire sur le thème de la comptabilisation du temps. Le COVID-19 a apporté de nouveaux besoins à la main-d'œuvre, car beaucoup d'entre nous travaillent à domicile. Il existe de nombreux outils de gestion de projet distribuée : Monday, Planday, etc. </p><p>Ce webinaire revisitera une ancienne technique de la planification des capacités mis à l'ordre du jour du Scrum et autres approches Agile distribuées. Sans influer la culture organisationnelle, cet outil renforce les lucidités individuelles, d'équipe, de produit et de projet. Cela permettrait à tout moment de voyager dans l'avenir. <br></p><p>Sujets :</p><p>1) Planification et prévision de la capacité:<br>Comment concevoir des feuilles de temps (CRA) qui soient significatives, tant du point de vue des employés que des consommateurs ?</p><p>2) Offre actuelle de logiciels pour la gestion des tâches de projets distribués:<br>Nous examinerons Planday, Monday, etc. et leurs utilisations.</p><p>3) Partage d’expérience des personnes présentes:<br>Les participants exposeront leurs propres manières de planifier la capacité, ou son absence, et leurs besoins. <br></p><p>Le 07/07/2021 à 15h:30 CET, la version française du webinaire sera présentée par Chris Mann, expert en planification de capacité appliquée aux industries de services, avec une expérience allant de Pole-Emploi à Wonderbox.</p><p></p><p><br></p><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/04/idata_4097638_Illustrations-billets-2013_Le-temps.jpg" class="kg-image" alt="Webinaire "Le temps qui compte""></figure>]]></content:encoded></item><item><title><![CDATA[My first months as web developer]]></title><description><![CDATA[<p></p><p>It was months ago when I got a new job at Smart Team Tunisia, an adventurous period for me as it's my first experience ever in the professional world.<br>In the following lines, I’ll share the lesson I've learned, the technologies I work with, and how my day at</p>]]></description><link>https://blog.smart-team.tn/my-first-months-as-web/</link><guid isPermaLink="false">606588743615cf00010130ac</guid><dc:creator><![CDATA[Fatma Oueld Hamood]]></dc:creator><pubDate>Thu, 22 Apr 2021 09:41:52 GMT</pubDate><media:content url="https://blog.smart-team.tn/content/images/2021/06/Gray-Marble-Business-101-Style-Instagram-Post-1.png" medium="image"/><content:encoded><![CDATA[<img src="https://blog.smart-team.tn/content/images/2021/06/Gray-Marble-Business-101-Style-Instagram-Post-1.png" alt="My first months as web developer"><p></p><p>It was months ago when I got a new job at Smart Team Tunisia, an adventurous period for me as it's my first experience ever in the professional world.<br>In the following lines, I’ll share the lesson I've learned, the technologies I work with, and how my day at work looks like. Curious to know more so let's start the journey!</p><ol><li><strong><strong>Lessons I’ve learned</strong></strong></li></ol><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/04/j-kelly-brito-PeUJyoylfe4-unsplash.jpg" class="kg-image" alt="My first months as web developer" srcset="https://blog.smart-team.tn/content/images/size/w600/2021/04/j-kelly-brito-PeUJyoylfe4-unsplash.jpg 600w, https://blog.smart-team.tn/content/images/size/w1000/2021/04/j-kelly-brito-PeUJyoylfe4-unsplash.jpg 1000w, https://blog.smart-team.tn/content/images/size/w1600/2021/04/j-kelly-brito-PeUJyoylfe4-unsplash.jpg 1600w, https://blog.smart-team.tn/content/images/size/w2400/2021/04/j-kelly-brito-PeUJyoylfe4-unsplash.jpg 2400w" sizes="(min-width: 720px) 720px"></figure><p>Ibn Qtaiba says: "one is still a scientist as long as he is asking for science: if he thinks he knows, he has begun his ignorance".</p><p><br>As a newcomer, the first months are all about learning. Learning Smart Team culture. Learning how to behave in meetings and learning how the codebase is architectured, learning how, where, and when to ask questions and many more.<br>In my case my first task was getting the application running on my work computer, I’ve needed to install the software tools, also different databases (the software has many clients).<br>In order to do that, the Smart Team granted me access to the codebase on GitLab, and my job was to get the program to run successfully.<br>Meanwhile, I had to go through reading the documentation, trying to understand how the program works, writing down remarks about the architecture, systems components. Big work, as the program is running for 20 years and has a lot of stuff! All as preparatory steps for incoming development and configuration.<br>Learning how the team operates, the next thing I have to learn and it can be placed as the first since we'll be integrated into a team from the first day. A skill that we get used to it as students, but here the atmosphere is largely different, we are talking about a business area.</p><p><br>You are still following, nice! You might guess that the next lesson is learning how to behave in meetings. Let's keep it to a next blog post and instead let's have a look at the work environment.</p><p>2. <strong><strong>Environment:</strong></strong></p><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/04/image.png" class="kg-image" alt="My first months as web developer"></figure><p><strong><strong>Java:</strong></strong> is a general-purpose programming language that is class-based, object-oriented, and designed to have as few implementation dependencies as possible</p><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/04/image-1.png" class="kg-image" alt="My first months as web developer" srcset="https://blog.smart-team.tn/content/images/size/w600/2021/04/image-1.png 600w, https://blog.smart-team.tn/content/images/size/w1000/2021/04/image-1.png 1000w, https://blog.smart-team.tn/content/images/2021/04/image-1.png 1280w" sizes="(min-width: 720px) 720px"></figure><p><strong><strong>Java Server Pages (JSP):</strong></strong> is a server-side programming technology that enables the creation of a dynamic, platform-independent method for building Web-based applications. JSP has access to the entire family of Java APIs.</p><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/04/image-2.png" class="kg-image" alt="My first months as web developer"></figure><p><strong><strong>Maven:</strong></strong> is a build automation tool used primarily for Java projects.</p><h3 id="databases-">Databases:</h3><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/04/image-3.png" class="kg-image" alt="My first months as web developer"></figure><p><strong><strong>PostgreSQL</strong></strong>, also known as Postgres, is a free and open-source relational database management system emphasizing extensibility and SQL compliance.</p><h3 id="tools-">Tools :</h3><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/04/image-4.png" class="kg-image" alt="My first months as web developer" srcset="https://blog.smart-team.tn/content/images/size/w600/2021/04/image-4.png 600w, https://blog.smart-team.tn/content/images/size/w1000/2021/04/image-4.png 1000w, https://blog.smart-team.tn/content/images/2021/04/image-4.png 1280w" sizes="(min-width: 720px) 720px"></figure><p>Th<em><em>e</em></em> <strong><strong><em><em>Eclipse IDE</em></em></strong></strong> is famous for our Java Integrated Development Environment (IDE), but we have several pretty cool IDEs, and in the next lines, I'll list a bunch of shortcuts that will facilitate you work this tool:</p><ul><li>Ctrl+E: lists all open files</li><li>Ctrl+Q: jump to the last edited location</li><li>Ctrl+shift+N: create a new resource</li><li>Ctrl+D: delete the current line</li><li>Ctrl+ shit+ / : comment a code line or block of lines</li></ul><p><strong>Git:</strong></p><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/04/image-5.png" class="kg-image" alt="My first months as web developer" srcset="https://blog.smart-team.tn/content/images/size/w600/2021/04/image-5.png 600w, https://blog.smart-team.tn/content/images/size/w1000/2021/04/image-5.png 1000w, https://blog.smart-team.tn/content/images/2021/04/image-5.png 1280w" sizes="(min-width: 720px) 720px"></figure><p>-f: You should pay attention when using it, it can erase a teammate's work on a branch in a second as I did once ;).</p><p>Git commands:</p><p>Through this professional experience, I have learned many useful git commands and below I'll list a bunch of them:</p><ul><li>git rm: removes staged files.</li><li>git revert: undoes a commit, but saves the correction as an additional commit over the mistake.</li><li>git reset: has more options to delete files and commits, but is risky to use!</li><li>git commit -amend changes your commit message.</li><li>git prune to remove orphaned branches</li><li>git reset --soft: can uncommit and keep your files staged.</li><li>git reset --mixed can uncommit and unstage your files.</li><li>git log: is used to traverse the ancestry of each commit providing details on who, when, and what was committed.</li><li>git reflog: is a history of all the actions you've taken on your local repository.</li><li>git blame is a detailed look at who added what line in the source code.</li><li>git cherry-pick can add a commit from one branch to yours.</li><li>What about git push origin &lt;branch&gt; -f: You should pay attention when using it, it can erase a teammate's work on a branch in a second as I did once (;.</li></ul><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/04/image-6.png" class="kg-image" alt="My first months as web developer"></figure><p><strong><strong>SmartGit: </strong></strong>is a Git GUI client with support for GitHub, BitBucket, GitLab pull requests, and comments. I like working with it, as it facilitates the work, through an easy and understandable interface.</p><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/04/image-7.png" class="kg-image" alt="My first months as web developer"></figure><p><strong><strong>GitLab: </strong></strong>is a web-based DevOps lifecycle tool that provides a Git-repository manager providing wiki, issue-tracking, and continuous integration/continuous deployment pipeline features.</p><p>We are using Gitlab as a source code management and delivery tool!</p><h3 id="teamwork-">Teamwork:</h3><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/04/image-8.png" class="kg-image" alt="My first months as web developer" srcset="https://blog.smart-team.tn/content/images/size/w600/2021/04/image-8.png 600w, https://blog.smart-team.tn/content/images/size/w1000/2021/04/image-8.png 1000w, https://blog.smart-team.tn/content/images/2021/04/image-8.png 1168w" sizes="(min-width: 720px) 720px"></figure><p><strong><strong>Jira: </strong></strong>software development tool used by agile teams</p><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/04/image-9.png" class="kg-image" alt="My first months as web developer"></figure><p><strong><strong>Google Meet</strong></strong> for team communication, daily with external team members.</p><p>To conclude my little trip, I'm going to list a few of the things that I have learned throughout these months as a Web Developer.</p><ul><li>The syntax doesn't matter as having the analytical skills to take a problem, split it into smaller bits and going through it little by little, it helps.</li><li>Git is such an important skill to have, and knowing how to use it as part of a team instead of just typing typical git commands will help you go a long way.</li><li>Know what questions to ask when and to whom.</li><li>Keep in mind to enjoy what you're doing.</li></ul>]]></content:encoded></item><item><title><![CDATA[Starting a task]]></title><description><![CDATA[<p></p><p>Let's imagine you are in a Scrum team applying more or less correctly the methodology. You did your Sprint planning meeting, you heard about what it has to be done and discussed it the time for a planning poker estimation.</p><p>You see a ticket in your Jira, ready column, and</p>]]></description><link>https://blog.smart-team.tn/starting-a-task/</link><guid isPermaLink="false">6062eba03615cf0001012faf</guid><dc:creator><![CDATA[Gabriele Santini]]></dc:creator><pubDate>Wed, 14 Apr 2021 07:23:00 GMT</pubDate><media:content url="https://blog.smart-team.tn/content/images/2021/06/Gray-Marble-Business-101-Style-Instagram-Post--2-.png" medium="image"/><content:encoded><![CDATA[<img src="https://blog.smart-team.tn/content/images/2021/06/Gray-Marble-Business-101-Style-Instagram-Post--2-.png" alt="Starting a task"><p></p><p>Let's imagine you are in a Scrum team applying more or less correctly the methodology. You did your Sprint planning meeting, you heard about what it has to be done and discussed it the time for a planning poker estimation.</p><p>You see a ticket in your Jira, ready column, and you decide to "take it". How should you proceed ? I will first give you my suggestion tl;dr way and then I will try to justify why I think this way is very effective.</p><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/06/20200814_105755.jpg" class="kg-image" alt="Starting a task" srcset="https://blog.smart-team.tn/content/images/size/w600/2021/06/20200814_105755.jpg 600w, https://blog.smart-team.tn/content/images/size/w1000/2021/06/20200814_105755.jpg 1000w, https://blog.smart-team.tn/content/images/2021/06/20200814_105755.jpg 1280w" sizes="(min-width: 720px) 720px"></figure><h3 id="functional-refinement">Functional refinement</h3><p>First of all, take some time to carefully read the ticket. If you have acceptance criteria attached, read them well. Make your own idea about what has to be done.</p><p>When you think you are done (it should take no more than 15 minutes if the task is reasonably dimensioned), you call your PO. YOU explain him what it has to be done with your own words. He listens carefully and then he gives you his feedbacks. Probably something you got slightly wrong, something you missed, something you added rightly and he didn't consider (you can decide together to modify the ticket). This meeting should also take around 10 minutes.</p><h3 id="technical-refinement">Technical refinement</h3><p>Once you are done, you open your IDE. You think about how you will concretely implement what has to be done. You look at the code you have to modify and try to imagine how you will do it. Which files are to be created/modified? Are there problems to solve? Are there possible side effects? Architecture best practices that apply?</p><p>This will probably take a little longer, but you should timebox it in 30 minutes max. If there are hard points, isolate them with precise questions. Once you are done, again, you call your lead developer/scrum master. You share your screen with the "code open" and YOU show him exactly how you intend to proceed. And ask the precise questions.</p><p>He listens to you and gives you his feedback: forgotten best practices, side impacts, ideas of better algorithms. He can answer the questions directly or take the responsibility to find an answer or you can decide together how to proceed to find a solution. This call can take up to 20 minutes.</p><p>That's all! I promise you that you will come out of this process with a very clear idea of what to do and a very good focus on the task to be executed. All the process will take less than 1h30'.</p><h2 id="why-it-works">Why it works</h2><p>First of all, your state of mind when you have to concretely start a task is very different from the one you have when you just make plans for it, even in short term. This makes all the difference.</p><p>Second of all, you take the charge to expose your point of view. You are using your terms and your technical vision, your interpretation. This avoids a lot of misunderstandings.</p><p>You take the time to prepare the calls and expose. These are excellent learning techniques.</p><p>There is no time waste for the PO and the lead dev. They can easely dig into the subject and been brought to the point. They don't have to investigate on their own side.</p><h2 id="variations">Variations</h2><p>If YOU are the lead developer, for the technical refinement you call the most experienced engineer in the team.</p><p>You can be pairing (congratulations!). If you are pairing with the lead developer, no need for technical refinement. If you are junior and you are pairing with another junior, do the preparation work together and then call the lead developer.</p><h2 id="metas">Metas</h2><p>I find a kind of a hole in the agile literature concerning the precious moment of starting a task. To pretend that everything is clear after the sprint planning is a lie. I have never seen this happen and I think there are good reasons for it.</p><p>Even with all the improvements agile techniques contributed to requirements specifications, there are common threats that affect user stories and acceptance scenari that land on a Jira ticket. Just to cite some, flawed humans that make mistakes and lack a perfect knowledge, imperfect organisation and reality time constraints that shorten or hinder 3A meetings.</p><p>And there is still the mental space of the person or the pair taking charge of the complex activity of realizing the implementation of the user story.</p><p>There is an extensive literature in human factors, ergonomic and activity theory studies on this. It is worthy to know at least a little bit of it.</p><p><br></p>]]></content:encoded></item><item><title><![CDATA[Pourquoi sous-traiter le développement des projets informatiques en Tunisie ?]]></title><description><![CDATA[Votre projet pour être réalisé, passe par plusieurs étapes et fait appel à de diverses compétences. D'où parfois la nécessité de la soustraitance.]]></description><link>https://blog.smart-team.tn/sous-traiter-le-developpement-des-projets-informatiques-en-tunisie/</link><guid isPermaLink="false">6062fc1a3615cf0001012fbf</guid><category><![CDATA[Development]]></category><dc:creator><![CDATA[Hassene Bchir]]></dc:creator><pubDate>Tue, 30 Mar 2021 14:58:12 GMT</pubDate><media:content url="https://blog.smart-team.tn/content/images/2021/03/tunis-87214_1920--1-.jpg" medium="image"/><content:encoded><![CDATA[<img src="https://blog.smart-team.tn/content/images/2021/03/tunis-87214_1920--1-.jpg" alt="Pourquoi sous-traiter le développement des projets informatiques en Tunisie ?"><p>	</p><!--kg-card-begin: markdown--><h3 id="introduction">Introduction</h3>
<!--kg-card-end: markdown--><p>	Votre projet pour être réalisé, passe par plusieurs étapes différentes et fait appel à de diverses compétences. Parfois vous ne disposez pas du savoir-faire et des technologies requises pour la production ou encore, vous n’êtes pas en mesure de répondre à une forte demande. D'où la question se pose du recours à la sous-traitance. Cette dernière se faisait auparavant exclusivement par de grandes entreprises. De nos jours, les PME ont également recours à ce procédé qui offre une économie de ressources, notamment le temps, les effectifs dévolus à ces tâches…</p><p>Ces différents avantages et bien d’autres (simplicité de traitement des commandes, sécurité des données, meilleure concentration sur d’autres aspects, meilleur rendement...) font qu’il est important d’envisager une sous-traitance dans votre projet informatique.</p><p>Afin de trouver des développeurs compétents, efficaces, il est primordial de bien choisir vos prestataires. Si vous n’y avez pas encore songé, sachez que la Tunisie offre un grand nombre de développeurs logiciels de bonne renommée et qui donnent des résultats très satisfaisants aux entreprises qui leur font appel. Voici, selon nous, 12 raisons qui justifient le choix de la Tunisie pour la sous-traitance de vos projets informatiques.</p><!--kg-card-begin: markdown--><h2 id="1desspcialisteshautementqualifis">1. Des spécialistes hautement qualifiés</h2>
<!--kg-card-end: markdown--><p>	Vous voulez disposer des meilleures prestations pour la réussite de votre projet et son bon déroulement. Nous avons une première bonne nouvelle pour vous. La Tunisie compte beaucoup de professionnels dans le domaine du développement des applications. Toute une jeune génération, bien à la page de nouvelles technologies et des spécificités du développement des projets informatiques ; des développeurs expérimentés qui ont fait leurs preuves.  Ils sont reconnus pour leur compétence de niveau international. Leur savoir-faire attire beaucoup d’entreprises à l’extérieur du pays qui leur font appel de différentes régions du monde. Vous pourrez entrer en contact avec des développeurs tunisiens experts en langages et techniques de programmation qui offrent un engagement et une flexibilité très appréciables.</p><!--kg-card-begin: markdown--><h2 id="2unmarchinformatiqueenpleinecroissance">2. Un marché informatique en pleine croissance</h2>
<!--kg-card-end: markdown--><p>	S’il est vrai que la Tunisie n’a pas toujours été un pôle incontournable des solutions informatiques, on peut remarquer depuis la dernière décennie, une meilleure assimilation et une meilleure maîtrise de ces solutions de façon générale. La Tunisie investit beaucoup en infrastructures et met un accent particulier sur la formation en informatique. La promotion de ce domaine est également faite par le gouvernement encourageant les innovations, la recherche, l'entrepreneuriat. Ce qui justifie, même partiellement, la grande diversité de produits et services proposés et un taux de croissance annuel dans le domaine de l’informatique entre 10 et 15%.</p><!--kg-card-begin: markdown--><h2 id="3normespourlaprotectiondelapropritintellectuelleetdescuritdesdonnes">3. Normes pour la protection de la propriété intellectuelle et de sécurité des données</h2>
<!--kg-card-end: markdown--><p>	La Tunisie est également l’un des premiers pays hors UE à  appliquer la nouvelle loi de la protection de données personnelles : la RGPD (Règlement général sur la protection de données). Le non-respect des normes définies dans ce règlement expose le contrevenant à des amendes pouvant aller jusqu’à 20 millions d’euros.</p><p>Les normes pour la protection de la propriété intellectuelle et pour la sécurité des données sont prises très au sérieux dans le pays (Normes américaines et européennes).</p><p>Vous n’avez donc pas à vous en faire pour la protection de vos données et informations.</p><!--kg-card-begin: markdown--><h2 id="4diplmseninformatique">4. Diplômés en informatique</h2>
<!--kg-card-end: markdown--><p>	Des écoles d’ingénieur informatique et des universités renommées du pays (l'École nationale d'ingénieurs de Tunis, l'École nationale des sciences de l'informatique, l'École supérieure des communications de Tunis, l'Institut supérieur des etudes technologiques en communications de Tunis ou l'Institut préparatoire aux études d'ingénieurs de Tunis...) assurent aux étudiants des formations certifiées et de qualité. La formation en développement logiciel en Tunisie dans ces écoles garantit les compétences et le sérieux des diplômés. </p><!--kg-card-begin: markdown--><h2 id="5laxefrancotunisien">5. L’axe franco-tunisien</h2>
<!--kg-card-end: markdown--><p>	La Tunisie est économiquement proche et liée à la France et au centre financier de Paris. La France est le premier investisseur étranger en Tunisie (1000 entreprises, dont beaucoup de groupes franco-tunisien) et le premier partenaire commercial de la Tunisie. La France est également le premier pourvoyeur d'aide bilatérale publique au développement en Tunisie.</p><!--kg-card-begin: markdown--><h2 id="6facilitdunearshoring">6. Facilité du nearshoring</h2>
<!--kg-card-end: markdown--><p>	Le nearshoring est l’action de délocaliser une activité vers une autre région d’un même pays ou un pays voisin. Ainsi en fonction de vos besoins et des compétences requises, vous pourrez facilement avoir recours au nearshoring en Tunisie pour mieux organiser les étapes de votre projet. De même, la Tunisie est d’une grande proximité culturelle avec la France, avec seulement 2h de vol des grandes métropoles françaises et sans décalage horaire.</p><!--kg-card-begin: markdown--><h2 id="7meilleurrapportqualitprixpourledveloppementdelogiciels">7. Meilleur rapport qualité/prix pour le développement de logiciels</h2>
<!--kg-card-end: markdown--><p>	Si vous recherchez un service informatique, sachez que la Tunisie propose le meilleur rapport qualité prix pour ses prestations de service. C’est parmi les prix les moins chers au monde et le résultat sera à la hauteur de vos attentes. Vous pourrez compter sur l’expertise et la rigueur de nos développeurs. Ainsi faire appel à une ESN tunisienne vous revient beaucoup moins cher qu’une ESN française.</p><!--kg-card-begin: markdown--><h2 id="8uneinfrastructuretechnologiquedehautequalit">8. Une infrastructure technologique de haute qualité</h2>
<!--kg-card-end: markdown--><p>	La Tunisie s’est lancée durant la dernière décennie dans la mise en place des infrastructures qui lui permettent d’être compétitive sur le marché international. Il a été l’un des premiers pays en offshore à installer un réseau de fibre optique.</p><!--kg-card-begin: markdown--><h2 id="9unbonniveauenfranaisetenanglais">9. Un bon niveau en français et en anglais</h2>
<!--kg-card-end: markdown--><p>	Tous les Tunisiens pratiquent couramment le français et les ingénieurs informatiques aussi  l’anglais. La langue ne sera donc pas une difficulté. Vous pourrez converser directement et de façon claire avec votre prestataire en anglais ou en français.</p><!--kg-card-begin: markdown--><h2 id="10lapopularitdelapprocheetdesmthodologiesagile">10. La popularité de l’approche et des  méthodologies Agile</h2>
<!--kg-card-end: markdown--><p>	La méthodologie Agile vous garantit, en tant que client, que vos instructions seront bien respectées et que vos besoins seront au centre des préoccupations du développeur. Même si tous les tenants et les aboutissants de l’approche agile ne sont pas complètement compris et appliqués, l’agilité jouit aujourd’hui d’une grande popularité dans l’environnement du développement informatique en Tunisie. En conséquence, l’adaptabilité, l’approche par la coopération, la motivation des équipes prônées dans cette méthodologie et déjà présentes dans la culture Tunisienne garantissent un résultat satisfaisant pour le client.  </p><!--kg-card-begin: markdown--><h2 id="11tunis">11. Tunis</h2>
<!--kg-card-end: markdown--><p>	Tunis, capitale économique et commerciale de la Tunisie. Lieu historique de culture méditerranéenne depuis toujours, dont sont témoins de nombreux ouvrages d’architecture, elle rassemble également de grands établissements d’enseignement supérieur spécialisés dans la formation en informatique. Elle se distingue par un climat social et politique stable, une population jeune et de très bonne formation. Elle possède aussi aujourd'hui trois technoparks orientés sur les Technologies de l’information avec plus de 2120 entreprises privées.</p><!--kg-card-begin: markdown--><h2 id="12mmefuseauhorairequelafrance">12. Même fuseau horaire que la France</h2>
<!--kg-card-end: markdown--><p>	Le décalage horaire ne sera pas au rendez-vous. Si vous êtes en France, l’heure est la même qu’en Tunisie. Donc, pas d’embrouilles au sujet de l’heure à considérer et surtout pas de problèmes de communication et d’organisation à cause de la faible superposition des horaires de travail.</p><!--kg-card-begin: markdown--><h2 id="tunisieavecsmartteam">Tunisie++ avec <a href="https://smart-team.tn/">Smart Team</a></h2>
<!--kg-card-end: markdown--><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/03/C_LOGO-SmartTeam-RVB.png" class="kg-image" alt="Pourquoi sous-traiter le développement des projets informatiques en Tunisie ?"></figure><p>	Si vous choisissez <a href="https://smart-team.tn/">Smart Team</a> comme votre prestataire en externalisation, ces avantages seront découplés. Voyons les points principaux :</p><p>		1. Qualification : <a href="https://smart-team.tn/">Smart Team</a> sélectionne soigneusement ses employés (1 sur 100 CV) et travaille en collaboration avec les universités pour recruter les meilleurs talents en sortie d’école. La formation continue en interne avec des workshops et des pilules techniques hebdomadaires.</p><p>		2. Agilité : chez <a href="https://smart-team.tn/">Smart Team</a> la vraie agilité est vécue et appliquée à tous les niveaux : des pratiques de code XP jusqu’à la gestion holacratique de l’entreprise.</p><p>		3. Proximité et rapports avec la France : <a href="https://smart-team.tn/">Smart Team</a> est une structure Franco-Tunisienne, son gérant réside en France et dans le cadre des projets d’envergure (et en dehors de la parenthèse COVID) des voyages à Tunis sont offerts aux clients pour rencontrer les équipes.</p><!--kg-card-begin: markdown--><h3 id="conclusion">Conclusion</h3>
<!--kg-card-end: markdown--><p>	Pour toutes ces raisons, il est très facile et même profitable pour vous de faire appel à une sous-traitance pour votre projet informatique. En dehors du fait que cela vous reviendra moins cher qu’en Europe, il s’agit aussi de la disponibilité d’un service de qualité, avec le meilleur rendement possible.</p><p>Prenez soin de définir vos besoins. Parfois, il est obligatoire d’avoir recours à la sous-traitance pour s’assurer que le travail avance rapidement, réduire les frais et se consacrer beaucoup plus aux spécialités de votre entreprise. Définissez vos besoins, exposez-les clairement aux développeurs et ensemble vous pourrez essayer de trouver la solution la plus adaptée.</p>]]></content:encoded></item><item><title><![CDATA[Kanban boards for Holacracy circles]]></title><description><![CDATA[<blockquote><em>How we structure a Kanban board to help ourselves facilitating Holacracy tactical meetings</em></blockquote><p>A <strong><strong>Kanban board</strong></strong> is an agile project management tool designed to help visualize work, limit work-in-progress, and maximize output. Kanban boards use cards, columns and light workflows to help teams commit to the right amount of work,</p>]]></description><link>https://blog.smart-team.tn/kanban-boards-for-holocracy-circles/</link><guid isPermaLink="false">6059bf5b3615cf0001012f68</guid><category><![CDATA[Methodology]]></category><category><![CDATA[Development]]></category><dc:creator><![CDATA[Leonelia Santini]]></dc:creator><pubDate>Tue, 23 Mar 2021 10:54:32 GMT</pubDate><media:content url="https://blog.smart-team.tn/content/images/2021/03/WhatsApp-Image-2021-03-23-at-12.36.33.jpeg" medium="image"/><content:encoded><![CDATA[<blockquote><em>How we structure a Kanban board to help ourselves facilitating Holacracy tactical meetings</em></blockquote><img src="https://blog.smart-team.tn/content/images/2021/03/WhatsApp-Image-2021-03-23-at-12.36.33.jpeg" alt="Kanban boards for Holacracy circles"><p>A <strong><strong>Kanban board</strong></strong> is an agile project management tool designed to help visualize work, limit work-in-progress, and maximize output. Kanban boards use cards, columns and light workflows to help teams commit to the right amount of work, and get it done!</p><p><strong><strong>Holacracy</strong></strong> is a system of organizational structures, with a decentralized organization in individuals who do not have qualified positions and with decision-making authority and distribution among a self-organized team.</p><p>A <strong><strong><strong><strong><em><em>“Circle”</em></em></strong></strong></strong></strong> is a Role that may further break itself down by defining its own contained Roles to achieve its Purpose, control its Domains, and enact its Accountabilities. Circles have recurrent "projects/activities".</p><p>We started to engage in holacracy this year and we lead our projects in a <strong><strong>agile</strong></strong> way.  When you talk about recurrent activities to follow up to an agilist the first idea that pops into his/her mind is "<strong><strong>kanban</strong></strong>!". So the question arises, how to use kanban to follow the activity of a circle? And how to introduce the kanban review during an holacracy tactical meeting?</p><p><strong><strong>How we structure Kanban boards to follow our Holacracy circles activity.</strong></strong></p><p>We use a basic kanban on Trello to which we added a couple columns. Now it looks like this:</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://blog.smart-team.tn/content/images/2021/03/For-blog.jpeg" class="kg-image" alt="Kanban boards for Holacracy circles" srcset="https://blog.smart-team.tn/content/images/size/w600/2021/03/For-blog.jpeg 600w, https://blog.smart-team.tn/content/images/size/w1000/2021/03/For-blog.jpeg 1000w, https://blog.smart-team.tn/content/images/2021/03/For-blog.jpeg 1600w" sizes="(min-width: 720px) 720px"><figcaption>Smart Team Kanbar for M&amp;S Circle</figcaption></figure><p><br>Let's describe how we use the columns in our weekly tactical meeting :</p><p><strong><strong><em><em>Recurring:</em></em></strong></strong> after the check-in, every tactical meeting has a checklist and measures review. We put tickets for recurrent tasks and measures in a "recurring" column in which tickets are semi-permanent and regularly updated. Some examples are: make resumes, benchmark one competitor, social media statistics, sales report, etc.</p><p><strong><strong>Picked up: </strong></strong>This columns starts working when the tickets on Ideas are assigned to people, and it means assigned members take the responsibility of the action, they fully know how to do it, and they engage to start it during the next week</p><p><strong><strong>Ongoing: </strong></strong>After a ticket is picked up, the persons assigned to it moves it to ongoing when it is actually being done.</p><p><strong><strong>Done?: </strong></strong>After the work on the task is done the ticket is moved to this column. Why the question mark? Because the task will be reviewed by other people to share their opinions, submitted to a Definition of Done checklist, or wait for an external reaction. This will determine if it is really done or if it should go back to ongoing.</p><p><strong><strong>Done!: </strong></strong>Once the action in the ticket are completely finished and verified they will land in this column. Time to celebrate! Btw, we should probably celebrate more.</p><p><strong><strong><em><em>Tensions</em></em></strong></strong>:  During the week (or during the first phases of the meeting) people put their tensions or ideas in this column assigning it to themselves. During the "triage tensions" step each ticket is assessed, refined, dismissed or accepted and added to "Ideas", perhaps with some new assignment. At the end of the triage step the column is empty.</p><p><strong><strong>Ideas</strong></strong>:  Here we put tickets that were previously on Tensions. It corresponds to the classical "backlog" column. At the end of the "project update" step we quickly review every ticket here to see if some of them can be picked up for the next week. We don't mind having lots of "Ideas", they give us a good perspective of what we can do in the middle term.</p><p>All in all, we think this mapping is really natural for people used to kanbans and it helps us to clearly visualize the work we are doing and effectively manage our circles activities.</p><p>Do you also use kanbans for circle activities? If not, why? How do you do it instead? If yes, do you do it differently?</p>]]></content:encoded></item><item><title><![CDATA[Vendoring: Should we do it?]]></title><description><![CDATA[<p>We recently had an interesting discussion with one of our clients about one of its habits:</p><blockquote>Vendoring?</blockquote><p>That means committing the dependencies of your project with your code.<br>I was quite surprised at the beginning because i thought it was a wrong practice from a bygone time.<br>But then I</p>]]></description><link>https://blog.smart-team.tn/blog-smart-team-tn-vendoring/</link><guid isPermaLink="false">60587f543615cf0001012ee0</guid><category><![CDATA[Development]]></category><dc:creator><![CDATA[Houssem Eddine Ben Abdallah]]></dc:creator><pubDate>Tue, 23 Mar 2021 10:01:40 GMT</pubDate><media:content url="https://blog.smart-team.tn/content/images/2021/03/vendor.png" medium="image"/><content:encoded><![CDATA[<img src="https://blog.smart-team.tn/content/images/2021/03/vendor.png" alt="Vendoring: Should we do it?"><p>We recently had an interesting discussion with one of our clients about one of its habits:</p><blockquote>Vendoring?</blockquote><p>That means committing the dependencies of your project with your code.<br>I was quite surprised at the beginning because i thought it was a wrong practice from a bygone time.<br>But then I discovered that there are many projects that commit the dependencies folder to their git repository.</p><hr><h2 id="why-you-should-not-commit-vendor"><strong><strong>Why you should not commit vendor?</strong></strong></h2><p>First of all, the <a href="https://getcomposer.org/doc/faqs/should-i-commit-the-dependencies-in-my-vendor-directory.md">official Composer recommendation</a> is not to commit vendor.<br>But we will talk about committing vendor in our vision.</p><h3 id="heavy-repository"><strong>Heavy repository</strong></h3><p>For example, my actual project goes from 50 MB to 300 MB.<br>This brings problems with indexing (IDE) taking too much time, and also downloading the repository can become a problem.</p><h3 id="conflict-problem"><strong><strong><strong>Conflict problem</strong></strong></strong></h3><p>If we push multiple merge requests that update the vendor folder, we can generate unnecessary conflicts.<br>It will be difficult to resolve those conflicts or to check differences between versions.</p><h3 id="confused-git"><strong>Confused Git</strong></h3><p>Committing vendor will confuse Git, because a large number of libraries did not ignore the git folder inside them, so Git will show these libraries as sub-modules without them being real sub-modules.</p><h3 id="env-problems"><strong>ENV problems</strong></h3><p>If we commit vendor, we will face a problem when switching between environments.<br>For example, if each (dev, preprod and prod) environment has its specific requirements then we will have unneeded libraries or we will lack needed libraries.</p><h3 id="dependencies-history-and-composer-cache"><strong>Dependencies history and composer cache</strong></h3><p>The composer.lock file will not match the dependencies.<br>Duplicated history can be found and the reference will not match the installed packages.</p><p>"reference": "e495f5c7e4e672ffef4357d4a4d85f010802f940"</p><p>"time": "2020-09-02T16:23:27+00:00"</p><p>This makes composer.lock unusable.</p><p>In this case, the vendor will be created using a specific composer inside a specific environment.<br>So we will not have the possibility of updating or maintaining the dependencies folder on the destination server.</p><p>At the end, it will be much more difficult to have a clear vision of your dependencies and their state.</p><h3 id="dependency-become-malware"><strong>Dependency become malware</strong></h3><p>How we can discover that a dependency is a malware or inject a malware? There is no way if we don’t use Composer frequently.</p><hr><h2 id="conclusion"><strong>Conclusion</strong></h2><p>There are some people that consider vendoring as the solution of many build problems, but we can find more appropriate and professional solutions for the exact same problems:</p><ul><li>Vendoring can make the deploy / build in our CI faster but using Composer cache do the same.</li><li>Vendoring can ensure exact version of our dependencies but cache and repeatable build using composer.lock with the exact versioning can do the same.</li><li>Vendoring can avoid malware in some cases but using Composer cache and audit can do it even better.</li><li>Vendoring can make build independent of the internet but Composer proxy and cache can do the same.<br>Also, we can mirror all dependencies in our custom repository, then we can centralize all projects.</li></ul><p>Globally speaking, both systems have pros and cons, but to fix the vendoring ones is more complicated, less clean and less effective than adjusting the use of Composer.</p><h3 id="notice"><strong>Notice</strong></h3><p>Composer 2 can be a possible and effective solution for many problems, it can make build faster, secured and more robust.</p>]]></content:encoded></item><item><title><![CDATA[Smart Team Culture]]></title><description><![CDATA[<p><em><em>A little introduction about us!!</em></em></p><p>Smart Team is an IT services pure player, focused on furnishing the best possible development and consulting services in a nearshore environment.</p><p>We help scaling skilled agile teams around the world. We do consulting for other IT companies. We do maintenance and lift up of</p>]]></description><link>https://blog.smart-team.tn/blog-smart-team-tn-smartteamculture/</link><guid isPermaLink="false">605870813615cf0001012ec2</guid><category><![CDATA[Getting Started]]></category><category><![CDATA[Smart team]]></category><category><![CDATA[Getting to know us]]></category><category><![CDATA[Smart Teamers]]></category><category><![CDATA[Development]]></category><dc:creator><![CDATA[Leonelia Santini]]></dc:creator><pubDate>Sat, 20 Mar 2021 08:48:00 GMT</pubDate><media:content url="https://blog.smart-team.tn/content/images/2021/03/blog.jpeg" medium="image"/><content:encoded><![CDATA[<img src="https://blog.smart-team.tn/content/images/2021/03/blog.jpeg" alt="Smart Team Culture"><p><em><em>A little introduction about us!!</em></em></p><p>Smart Team is an IT services pure player, focused on furnishing the best possible development and consulting services in a nearshore environment.</p><p>We help scaling skilled agile teams around the world. We do consulting for other IT companies. We do maintenance and lift up of complex legacy software and we help clients to develop new projects from scratch.</p><p>We face challenges on a daily basis. For this we need to forge a solid company culture.</p><h3 id="what-we-mean-by-company-culture">What we mean by company culture</h3><blockquote>Organizational culture is a set of shared assumptions that guide behaviors. It is also the pattern of such collective behaviors and assumptions that are taught to new organizational members as a way of perceiving and, even, thinking and feeling,<strong><strong> Ravasi and Schultz (2006).</strong></strong></blockquote><h3 id="what-is-it-like-to-be-a-smart-teamer">What is it like to be a Smart Teamer</h3><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/03/Fotos-de-equipe-back-to-the-office.jpg" class="kg-image" alt="Smart Team Culture" srcset="https://blog.smart-team.tn/content/images/size/w600/2021/03/Fotos-de-equipe-back-to-the-office.jpg 600w, https://blog.smart-team.tn/content/images/size/w1000/2021/03/Fotos-de-equipe-back-to-the-office.jpg 1000w, https://blog.smart-team.tn/content/images/size/w1600/2021/03/Fotos-de-equipe-back-to-the-office.jpg 1600w, https://blog.smart-team.tn/content/images/size/w2400/2021/03/Fotos-de-equipe-back-to-the-office.jpg 2400w" sizes="(min-width: 720px) 720px"></figure><p>Personally, I feel like being surrounded by people with clear communication and understanding is what we smart teamers are mainly about.</p><p>Being a smart teamer means everyone is treated with respect and everyone's opinion is valued:  we are open and transparent. and I feel that everyone is proud to be a smart teamer.</p><p>But don't just hear it from me, I'm just a social media manager surrounded by a dozen developers, which makes me wonder:</p><p></p><p><em><em><strong><strong>What is it like to them to be a smart teamer</strong></strong> ?</em></em></p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://web.archive.org/web/20210116200153im_/https://lh3.googleusercontent.com/FnoyOce2BKsw_C5hnCY0TiS4PKn54DuQh-sUpzKH40sLJclL3IwBDEjuF79rtDJc3gGDrmX4bpKJn22S2Y1MghjkJkz15NZS-2KqAPPv8ppsaFzPmK54dsg93A6t1Uw8byONgPa8" class="kg-image" alt="Smart Team Culture"><figcaption>Lead Developer Full Stack</figcaption></figure><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://web.archive.org/web/20210116200153im_/https://lh5.googleusercontent.com/4o-USDlIEpVUkVLHIuOkKRLvtVPrvK9AYKL5vqn6vzgf5ywarG0vkIlYTJLoGSHjRgSVCZSNXG9SEZ96lsXo2cLuOvwlegR3vnKXmkApyaYWIZ8S0LTbKh1bNkigTh4g-TIDqOHe" class="kg-image" alt="Smart Team Culture"><figcaption>Junior Java Developer‌</figcaption></figure><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://lh3.googleusercontent.com/plpRtj6r3o6kSPw3ZssolndLNDkjKiP_Eq0DjkhgdSBlpzgbyq8noXO681exDUwK9tRu93skqoxMgEx5NlelRelqu2pRhCtXXvdflyxlrl4qFMRrI4EjzFcQkD-Rt9dy1cbOYARZ" class="kg-image" alt="Smart Team Culture"><figcaption>Confirmed Full Stack PHP developer</figcaption></figure><p>‌</p><h2 id="what-makes-us-unique">What makes us unique ? </h2><p></p><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/03/LOGO-SmartTeam-BLUE.png" class="kg-image" alt="Smart Team Culture" srcset="https://blog.smart-team.tn/content/images/size/w600/2021/03/LOGO-SmartTeam-BLUE.png 600w, https://blog.smart-team.tn/content/images/2021/03/LOGO-SmartTeam-BLUE.png 800w" sizes="(min-width: 720px) 720px"></figure><p></p><p>We like to think that we rely on three pillars :</p><ul><li><strong><strong>Technical Excellence :</strong></strong> we chose the most passionate people and the ones with the highest potential, and we help them improve their skills highly investing in continuous learning;</li><li><strong><strong>Agility :</strong></strong> simplicity, communication, feedback. Transparency of accomplishments and management;</li><li><strong><strong>Human relationships :</strong></strong> Our people are caring and efficient. A strong and human interaction between our teams and our customers allows a deep understanding of clients needs and mutual satisfaction.</li></ul><blockquote>Our motto is: Do IT better !!</blockquote><p>In software development, it is not enough to do something that just works in some way. You have to care about how your product can evolve, adjusting to new needs and circumstances. It has to be done well.</p><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/03/goal-setting-for-small-business.jpg" class="kg-image" alt="Smart Team Culture" srcset="https://blog.smart-team.tn/content/images/size/w600/2021/03/goal-setting-for-small-business.jpg 600w, https://blog.smart-team.tn/content/images/2021/03/goal-setting-for-small-business.jpg 750w" sizes="(min-width: 720px) 720px"></figure><p><strong><strong>Our goal is:</strong></strong></p><ul><li><em><em>To become a reference company for technologies and methodologies in the software industry</em></em></li><li><em><em>To develop organically up to a reasonable size of 50-100 excellent profiles</em></em></li><li><em><em>To open new collaborating subsidiaries with the same spirit in other developing countries</em></em></li></ul><p></p><p>Now that you know about us, and if you feel like you want to be part of this team, I will enlighten you with more reasons on:</p><p><strong><strong>Why you should join us ?</strong></strong></p><p>Because you deserve to be in a place where :</p><ul><li>You will be valued, heard, welcomed;</li><li>All your contributions matter;</li><li>A place in which there is distribution of responsibilities so that everyone advances as a team and as an individual.</li></ul><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/03/Words_37.png" class="kg-image" alt="Smart Team Culture" srcset="https://blog.smart-team.tn/content/images/size/w600/2021/03/Words_37.png 600w, https://blog.smart-team.tn/content/images/2021/03/Words_37.png 946w" sizes="(min-width: 720px) 720px"></figure><p><br>You liked this short introduction about us and want to know more? You can find us on social media, and visit our website, we will be happy to hear from you.</p><p>For now leave your comment, let us know what you think.</p>]]></content:encoded></item><item><title><![CDATA[Rencontre avec Maghreb Economic Forum]]></title><description><![CDATA[<p>Ce 24 Janvier 2019, Smart Team a choisi de commencer la nouvelle année avec un meetup un peu différent.</p><p>Nous avons donc reçu dans nos locaux, Maghreb Economic Forum, un Think and Do Tank indépendant fondé en 2011, dans le cadre de son projet sur les perceptions de l’Inclusion</p>]]></description><link>https://blog.smart-team.tn/rencontre-avec-maghreb-economic-forum/</link><guid isPermaLink="false">605c9c903615cf0001012f9d</guid><category><![CDATA[Events]]></category><dc:creator><![CDATA[Amel Bhar]]></dc:creator><pubDate>Sun, 27 Jan 2019 14:24:00 GMT</pubDate><media:content url="https://blog.smart-team.tn/content/images/2021/03/IMG_20190124_175508--1-.jpg" medium="image"/><content:encoded><![CDATA[<img src="https://blog.smart-team.tn/content/images/2021/03/IMG_20190124_175508--1-.jpg" alt="Rencontre avec Maghreb Economic Forum"><p>Ce 24 Janvier 2019, Smart Team a choisi de commencer la nouvelle année avec un meetup un peu différent.</p><p>Nous avons donc reçu dans nos locaux, Maghreb Economic Forum, un Think and Do Tank indépendant fondé en 2011, dans le cadre de son projet sur les perceptions de l’Inclusion et l’Exclusion.</p><p>Un Focus Group d'une durée de 90 minutes a été organisé avec la présence de toute l'équipe de Smart Team. Le focus group a été animé et modéré par deux membres du MEF et s'est penché sur plusieurs axes touchant la vie sociale et professionnelle des jeunes.</p><p>La discussion a débuté par une introduction générale du projet, un brise-glace entre l’équipe Smart Team qui a appris à se connaître sous différents angles.</p><p>Ensuite, la discussion s’est étalée sur les 5 index suivants :</p><p>1)      <em><em>Education</em></em>: Implication personnelle ou familiale dans le domaine choisi.</p><p>2)      <em><em>Gainful Employment :</em></em> Le niveau de satisfaction par rapport à l'emploi exercé, et sa stimulation du sentiment d'accomplissement personnel.</p><p>3)      <em><em>Civic Engagement:</em></em> Le niveau d’implication à la vie de la collectivité : Connexion à la société, partage des intérêts communs et travail pour le bien commun.</p><p>4)      <em><em>Inclusion and exclusion at work:</em></em> importance de la reconnaissance au travail et niveau des rapports hiérarchiques.</p><p>5)      Social acceptance within work environment: Un esprit d'équipe fort: implique l'acceptation et la tolérance des différences de perspectives et de styles de travail.</p><p>Enfin, le focus group s’est terminé avec une pause-café ou chacun des participants a donné son avis et ses impressions à propos de la rencontre.</p><p>Les résultats du focus group ont été présentés après une tournée dans plusieurs villes en Tunisie, et ce lors d'une conférence organisée à Tunis en cours du mois d'Avril.</p><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/03/IMG_20190124_181855--1-.jpg" class="kg-image" alt="Rencontre avec Maghreb Economic Forum" srcset="https://blog.smart-team.tn/content/images/size/w600/2021/03/IMG_20190124_181855--1-.jpg 600w, https://blog.smart-team.tn/content/images/size/w1000/2021/03/IMG_20190124_181855--1-.jpg 1000w, https://blog.smart-team.tn/content/images/size/w1600/2021/03/IMG_20190124_181855--1-.jpg 1600w, https://blog.smart-team.tn/content/images/size/w2400/2021/03/IMG_20190124_181855--1-.jpg 2400w" sizes="(min-width: 720px) 720px"></figure>]]></content:encoded></item><item><title><![CDATA[Distances en travail numérique]]></title><description><![CDATA[<p>Dans le cadre des séminaires sur l'agilité en entreprise: Agileprise, Smart Team a décidé d'organiser en collaboration avec Caplancity un meetup qui tourne autour des distances en travail numérique.</p><p>Le meetup a eu lieu aux Grands Voisins le 07/11/2017 à 18:30, il était sous forme d'atelier auquel</p>]]></description><link>https://blog.smart-team.tn/distances-en-travail-numerique/</link><guid isPermaLink="false">605c9ad03615cf0001012f90</guid><category><![CDATA[Events]]></category><dc:creator><![CDATA[Amel Bhar]]></dc:creator><pubDate>Thu, 08 Nov 2018 14:17:00 GMT</pubDate><media:content url="https://blog.smart-team.tn/content/images/2021/03/23517625_533916090296057_5336466049022313564_n-1.png" medium="image"/><content:encoded><![CDATA[<img src="https://blog.smart-team.tn/content/images/2021/03/23517625_533916090296057_5336466049022313564_n-1.png" alt="Distances en travail numérique"><p>Dans le cadre des séminaires sur l'agilité en entreprise: Agileprise, Smart Team a décidé d'organiser en collaboration avec Caplancity un meetup qui tourne autour des distances en travail numérique.</p><p>Le meetup a eu lieu aux Grands Voisins le 07/11/2017 à 18:30, il était sous forme d'atelier auquel était présent l'équipe de développement en Tunisie et les participants en France via Skype.</p><p>L'atelier a eu comme invité spécial l'expert en agilité Olaf Lewitz. Christopher Mann de Caplancity et Gabriele l'ont animé avec des jeux et débats en relations avec les distances en logistique et culture.</p><p><br>Les distances logistiques sont de type:</p><p>-Géographique:  à travers le monde (off-shoring, projets hyper-distribués, télétravail) ou à travers un mur.</p><p>-Temporel: Le temps entre la demande et la réalisation, le décalage horaire..</p><p>- Légal/Procédural: Le contrat, le système de gestion de processus</p><p><br>Les distances culturelles peuvent provenir:</p><p>-Du métier (par exemple entre l'informatique et le marketing</p><p>-De la culture nationale (par exemple dans l’offshore).</p><p>-De la culture ou des cultures d'entreprise</p><p>-Des intérêts qui peuvent légitimement différer.</p><p><br>Enfin, l'atelier a été clôturé autour d'un cocktail dînatoire: Une pizza New Yorkaise en clin d’œil à Christopher représentant de Caplancity.</p><figure class="kg-card kg-image-card"><img src="https://blog.smart-team.tn/content/images/2021/03/23517625_533916090296057_5336466049022313564_n.png" class="kg-image" alt="Distances en travail numérique" srcset="https://blog.smart-team.tn/content/images/size/w600/2021/03/23517625_533916090296057_5336466049022313564_n.png 600w, https://blog.smart-team.tn/content/images/2021/03/23517625_533916090296057_5336466049022313564_n.png 631w"></figure>]]></content:encoded></item></channel></rss>