Internship Experience Report

Page 1. 1. Nicolas ZERR. EPITECH. 5TH YEAR. INTERNSHIP. INTERNSHIP EXPERIENCE REPORT. 27/02/2012 ..... REFERENCES AND BOOKS . .... coordinates initiatives, tracks performance, and oversees cross functionality. Figure 2 ... To solve this issue, the data management is centralized to one endpoint: Pixel,.
784KB taille 360 téléchargements 1207 vues
EPITECH 5TH YEAR

INTERNSHIP EXPERIENCE REPORT

INTERNSHIP

Nicolas ZERR

27/02/2012 - 31/07/2012 Login: nzerr_ext

Mentors: Nicole LE RAY / Arnaud HAMEL

1

Internship Experience Report

TABLE OF CONTENT TABLE OF CONTENT ............................................................................................ 2 ACKNOWLEDGEMENTS ........................................................................................ 5 INTRODUCTION .................................................................................................. 6 I.

SQUARE-IT ................................................................................................... 7

II. I.

ABOUT FINDING THE INTERNSHIP ............................................................ 8 UNDERSTAND THE COMPANY BACKGROUND .............................................. 10

1.

COMPANY PRESENTATION: THE GROUP ....................................................................10 Rexel Group...................................................................................................10 1. COMPANY PRESENTATION: REXEL FRANCE ...............................................................11 Geographical structure ....................................................................................11 Structural organization ....................................................................................11 Executive committee.......................................................................................12 Partners and competitors ................................................................................13 IT department ................................................................................................13 2. COMPANY CONTEXT AND STRATEGY ........................................................................14 Company goals ..............................................................................................14 Strategy ........................................................................................................14 Company growth ............................................................................................14 Communication ..............................................................................................14 Collaboration .................................................................................................15 Key values.....................................................................................................15 II.

UNDERSTAND THE JOB ............................................................................ 16

1.

JOB DESCRIPTION ............................................................................................16 Subject .........................................................................................................16 Main goal: .....................................................................................................16 Implicit missions ............................................................................................16 Scope and targets ..........................................................................................16 2. ENVIRONMENT AND TOOLS .................................................................................17 Personal environment .....................................................................................17 Qualification environment ................................................................................17 Production environment ..................................................................................18 III.

THE PROJECT ........................................................................................... 19

1.

PROJECT DESCRIPTION AND CONTEXT .....................................................................19 Pixel, the collaborative Intranet ........................................................................19 Advantages and benefits .................................................................................20 User scope ....................................................................................................20 Pixel Project migration ....................................................................................21 2. PROJECT TASKS ..............................................................................................22 Manage data access security ............................................................................22 Website creation ............................................................................................22 Tool for managing key accounts constructions sites ............................................23 “Governmental contracts” file management .......................................................23 Pixel maintenance ..........................................................................................24 Create automation tools ..................................................................................25

Nicolas ZERR

Epitech 5th year internship

2

Internship Experience Report

3.

I.

Evolved and modern forms ..............................................................................25 NEW TASKS AND PROJECT FUTURE .........................................................................25 Modernizing the forms ....................................................................................25 SharePoint 2010 migration ..............................................................................26 Write users guide and specifications .................................................................26 PROGRESS MADE ........................................................................................ 28

1.

TECHNICAL SKILLS ...........................................................................................28 Programming languages ..................................................................................28 Web Technologies...........................................................................................28 Software .......................................................................................................28 Programming paradigms and IT culture .............................................................29 2. SOFT SKILLS ..................................................................................................29 II.

PROJECT MANAGEMENT ........................................................................... 30

1.

WORKING METHODS .........................................................................................30 Meetings .......................................................................................................30 Requests and task tracking ..............................................................................30 Working method .............................................................................................30 External help resources ...................................................................................31 2. PROJECT QUALITY ............................................................................................31 III.

PROJECT RESULTS ................................................................................... 32

1.

RESULTS ......................................................................................................32 Project tasks states ........................................................................................32 Results analysis in term of money ....................................................................32 Results analysis in term of organization benefits.................................................32 2. PERSONAL CONTRIBUTION TO THE PROJECT ..............................................................33 Fix bugs from Pixel migration process failures ....................................................33 Implied in user profile management with Lync ...................................................33 User usage of SharePoint improvement .............................................................33 I.

COMPANY KNOWLEDGE .............................................................................. 35 1.

COMPANY BUSINESS KNOWLEDGE .........................................................................35 Contacts and interlocutors: Knowing the right person for the right question ...........35 Computer science notions ................................................................................35 Enterprise notions ..........................................................................................35 2. UNDERSTANDING COMPANY GOALS ........................................................................36 Long term goals .............................................................................................36 Short-term goals ............................................................................................36 3. UNDERSTANDING COMPANY CULTURE .....................................................................37 II.

MANAGEMENT SKILLS ............................................................................. 38

1. 2.

UNDERSTAND THE MANAGER ROLE .........................................................................38 TEAM WORK AND COMMUNICATION ........................................................................39

III.

PERSONAL INTERESTS FOR A NEW PROJECT ........................................... 40

1. 2. 3.

PROCESS AUTOMATION ......................................................................................40 GET CLOSER FROM USERS’ NEEDS .........................................................................40 REINFORCE COLLABORATION: KNOWLEDGE SHARING ...................................................41

Nicolas ZERR

Epitech 5th year internship

3

Internship Experience Report CONCLUSION .................................................................................................... 42 REFERENCES AND BOOKS ................................................................................. 43 References ....................................................................................................43 Books ...........................................................................................................43

Nicolas ZERR

Epitech 5th year internship

4

Internship Experience Report

ACKNOWLEDGEMENTS Since I have worked for Square-IT, but have been in mission in Rexel, I would like to express my gratitude to people from the two organizations. I would thank M. Clement GAUGER, CEO in Square-IT, for having accepted me in his company, and for having proposed an interesting mission inside Rexel. I would also thank M. Cyril SAYAG, Square-IT salesman and having being in mission in Rexel, for his precious advice and for his care towards me. First, I would like to thank Mr. Arnaud HAMEL for being my mentor, for his will to help, for his professionalism and his daily good mood and sense of humor. I would like to thank Nicole LE RAY, who relieved Mr. HAMEL in charge of the Pixel project, for her professionalism, her seriousness and her pertinent remarks about managing the project. I would also like to thank the following persons: -

Isabelle REINEAU for her collaboration in the governmental contracts management application Thierry GROSBOIS, for his collaboration in the construction site management application Catherine LION, for her generous help and kindness in the process of modernizing forms.

And finally, thank the whole IT department team for their good mood and their remarkable collaboration.

Nicolas ZERR

Epitech 5th year internship

5

Internship Experience Report

INTRODUCTION EPITECH (European Institute of Technology)’s master degree requires the validation of a six months internship, in the domain of computer science. The internship's goal is intended to prove the student's valor, seriousness, skills and professionalism. It is also a benefit for the student, to make a first dive into in the business world and integrate a real project team. This document describes Nicolas ZERR’s experience in Square-IT Services, in particular the mission in the electrical supplies company REXEL France, from March the 27th to July the 31st. The mission subject is the evolution and maintaining of the REXEL France collaborative intranet. In short, it consists in programming new features for the Intranet, based on the SharePoint 2007 / 2010 technology, and also to maintain previous projects, made by other interns or external service provider. The other facet of the job is to handle business users’ requests, such as site creation, permissions, new project definition, etc. In order for the reader to perceive the actual context of this internship, the first part describes in brief the company Square-IT, and also useful notes about the subject of the intern. Then, the document is divided into three sections, each describing a context in the business world. The first part describes how to explain the company context, the project context to a new intern, who is in charge of continuing the project. The second part is intended to the internship responsible. In this scenario, the responsible must be convinced to engage the intern in a new project by analyzing the ending project review. The last part is dedicated to the scenario where the intern must convince an executive chief or a high ranked employee to allow him to take the responsibility of a new project, from the beginning to the end.

Nicolas ZERR

Epitech 5th year internship

6

Internship Experience Report

Quick presentation of the company Square-IT and internship context I.

SQUARE-IT Square-IT Services, established since 2006 provides computer science services for other companies. Its location, Asnières sur Seine, near Paris, earns the benefit to be near most of the business headquarters. Square-IT and provides services for many partners and co-workers, such as Veolia, Rexel… The Square-IT collaborators step in the decision process as engineers, experts or project leader. Square-IT provides sought-after IT skills, with a large amount of employees, mainly constituted of executives and confirmed profiles.

Nicolas ZERR

Epitech 5th year internship

7

Internship Experience Report

II.

ABOUT FINDING THE INTERNSHIP For Epitech’s fifth year, many students chose to go to Epitech Paris to study. It was allowed and recommended to get a part-time job, so that the second part of the week was dedicated to Epitech classes and the first part was intended to have a job experience in a company in alternation. At this period of time, I was studying Microsoft technologies. However, it is a wide domain, and discovering it in classes was not enough. I decided to find a part-time job where I could satisfy my curiosity and go deeper in using the Microsoft technologies. A colleague of mine oriented me to Square-IT. Square-IT is a service provider for all kind of companies and has special competence in security and Microsoft technologies. For six months, I have worked for Square-IT in alternation in the Rexel Company. The alternation period was followed directly by the internship. At the beginning, I did not expect to continue in Rexel for the internship, but the professional structure and the job were interesting and I have learnt a lot during the alternation. I decided to sign for another contract and make my internship there, for six months again. I was under the responsibility of Arnaud HAMEL, project leader, and later Nicole LE RAY.

Nicolas ZERR

Epitech 5th year internship

8

Internship Experience Report

First scenario: A new person is in charge to continue the project The following scenario puts the student in the classic situation where he finishes his mission and must transfer the competence to another person in charge of the project. In this part, we will focus on what is interesting the other person to quickly learn about the company and the new project: -

The company background : understand the company goals The job description : understand what is the role of being in charge of this project The project description: understand what the project tasks are and what needs to be done to appropriate the project with success.

Nicolas ZERR

Epitech 5th year internship

9

Internship Experience Report

I.

UNDERSTAND THE COMPANY BACKGROUND 1. Company presentation: the group Rexel Group

Created in 1967 as the « Compagnie de Distribution de Matériel Electrique (CDME) », Rexel is now the leader in electrical supplies in most of the countries on the world. Its strategy consists in associate leadership and proximity, both for private individuals and companies. Rexel Group owns many banners: Gexpro, Hagemayer, Elektroskandia, and Rexel France, where took place the internship mission. Figure 1 : Rexel Group implantation by location and by activity

Highlighting figures: 37 countries 2 100 agencies 130 logistical centers 28 000 employees Results Sales: €12.7 billion Marge: 24.6% Net result: €319 million

Nicolas ZERR

Epitech 5th year internship

10

Internship Experience Report

1. Company presentation: Rexel France

Geographical structure

Rexel France is deployed over all France. For commercial purposes, Rexel is divided into two organizations: Rexel and Coaxel, each having its own partners. Because of the growing amount of proximity agencies, Rexel’s structure is divided into zones, to build a hierarchical structure for better management. A zone is corresponding to one or several France regions and contains several agencies. Agencies are the shops, and deal directly with customers. The IT infrastructure is centralized at 3 locations: Paris, Issy les Moulineaux and Montpellier. These locations can be explained by the proximity of many services providers, and are the headquarters for many companies dealing with the same domain. Structural organization

Rexel France, in addition of the core business infrastructure, is divided into 5 main departments -

Human Resources : people management General services : Furniture, policies, practical information DAF (legal department) DSI (IT direction) Communication

I have been integrated in the IT direction unit, composed of 22 employees. The IT direction is responsible of: -

Manage workstations : provide new hardware and software Design and manage projects Maintain and improve production applications Deploy IT technologies, such as telephony or new data services. Feed and track internal and external data flows Provide help to end users Monitor services availability and quality

Nicolas ZERR

Epitech 5th year internship

11

Internship Experience Report Executive committee

Rexel is led by an Executive committee. The Committee discusses strategy, coordinates initiatives, tracks performance, and oversees cross functionality .

Figure 2 : Executive committee

Nicolas ZERR

Epitech 5th year internship

12

Internship Experience Report Partners and competitors

Rexel has developed a big partnership with more than 30 providers, the principal ones are: -

Schneider Siemens Bosch Osram

Rexel is the leader in electric supply in Northern and Southern America, first in Asia and second in Europe. Its main competitors are Legrand and Hager. IT department

The mission occurred in the Rexel France IT department. IT department is directed by: -

Mr. Dominique BISSEY (Executive for new technologies) Mr. Olivier BALDASSARI (Executive chief)

The unit is mainly composed of Project leaders or architects, so their scope is to be responsible of one or several project or application. In the IT domain, Rexel collaborates with services providers: -

Square-IT IBM Logica Steria Microsoft Expertime

Nicolas ZERR

Epitech 5th year internship

13

Internship Experience Report

2. Company context and strategy Company goals

Concerning the company business, the main goal is to reinforce its leadership, by improving the proximity towards its customers, and consequently increase the number of agencies. Rexel also wishes to improve service and information quality for both customers and collaborators. Consequently, the company relies on technologies evolution and IT processes. Strategy:

Rexel has a strategy plan called Energy in Motion, which focuses four strategic points: -

-

A profitable growth :ally organization growth with acquisitions A proactive resource management : optimize resource allocation to increase return on investment A collaboration culture: take advantage of the synergies inside the company and encourage valuable partnerships with the main supply providers and customers Operating excellence: increase the productivity and levels of service to optimize the business efficiency and performance of supply chain.

Company growth

Rexel is relentlessly evolving, by making acquisitions (SCT in 2012), by extending its area of expertise, and also modernizing its technologies. IT plays a big role: the direct consequence of the growing number of agencies results in a need of extra equipment and services: hardware, networking, and software deployment. The firm also establishes relations with other leading companies: thanks to a consequent number of contracts with partners and services providers, Rexel keeps its IT up to date continuously, often taking advantage of the latest products on the market with reduced costs. Communication

One of Rexel’s biggest problematic of is how to keep aware each business agent of new information, and vice-versa: -

For customers, to access a complete list of the products, prices, stocks, etc. For providers, update data through data flows For partners, be aware of contracts creation and modifications

Nicolas ZERR

Epitech 5th year internship

14

Internship Experience Report -

For service providers, define interfaces for updating and upgrading data applications For organization units, communicate between them internally and notice collaborators of changes and evolutions. For employees, allow to share new content and resources

We saw that Rexel has a great amount of collaborators, so how to make communication efficient, and cover the majority of the affected population? To solve this issue, the data management is centralized to one endpoint: Pixel, the collaborative Intranet, with the assets of data scalability, maintainability and spreading for all collaborators. Collaboration

Collaboration is a vector of productivity and nowadays, IT technologies offer the possibility to make data available all the time, everywhere. The real need is to have an accessible, centralized, asynchronous platform, from where employees should be able to manage information they produce: -

Share documents Manage events Feed business data Send and receive alerts Workflows

In order to respond to these needs, Rexel decided in 2008 to acquire Microsoft SharePoint, a platform specialized in collaboration and content management. Rexel also chose this platform because it integrates well with their Microsoft infrastructure. However, SharePoint itself was not responding to all Rexel's needs: because structure and data are specific and potentially complex, the platform has to be adapted and extended. This is the project Pixel. Key values

Rexel has developed six key values they are interacting with their customers: -

Offer the best customer experience Unit strengths Encourage innovation Imply collaborators to develop their talent Develop a mutual confidence Blossom by creating the difference and challenge itself

Nicolas ZERR

Epitech 5th year internship

15

Internship Experience Report

II.

UNDERSTAND THE JOB 1. Job description The job exists since 2008. At this period, the Pixel project was created. The job has been taken over from several people. Subject

The purpose of this job is to be responsible of the evolution and maintenance of Rexel France‘s collaborative Intranet, Pixel. In short terms, the job consists in extending the Intranet‘s functionalities by developing application components or improve the already existing ones. Main goal:

The main goal is to develop new features for Pixel. Pixel is a generic tool for collaboration. However many collaborators have specific needs: personal data management, production control, document management, or needs for an application dedicated to a business job. The job precisely consists in conceiving, developing, testing and integrating the new functionalities. Implicit missions

In addition of the main goals, peripheral tasks are involved for the project’s sake: -

-

Synchronizing with other teams. It is important to identify new bugs, features, updates, and to notify the team leader and infrastructure support teams, in order to be taken into account in new development phases. Bring other development perspectives Ensure service quality and availability Provide support for users Increase productivity for users by improving the experience, in terms of collaboration Producing online tools for every organization unit, and interacting with the existing data.

Scope and targets

Pixel is intended for every Rexel collaborator: -

Business and transversal departments employees services providers interns technical experts.

Nicolas ZERR

Epitech 5th year internship

16

Internship Experience Report

2. Environment and tools The person in charge of pixel must master three kinds of environments: his personal environment, the qualification environment and the production environment. Rexel has a close partnership with Microsoft; the software stack is mostly based on its technologies, for end users as well as the general infrastructure. Since Rexel‘s environment is mainly composed of Microsoft technologies, the tools used are part of the Microsoft tools: Personal environment

The personal environment is favorable to work collaboration: -

A Cisco landline IP phone A Windows Seven powered computer The classic Office 2010 suite : Word, Excel, PowerPoint, Publisher Microsoft OneNote for taking notes during meetings Microsoft Access for database handling Microsoft Outlook for receiving mail, planning meetings and plan quick tasks. Microsoft Project for project management Microsoft Visio to make user-friendly diagrams. Microsoft Lync : instant messaging, very useful for organizing meetings Remote tools to access the qualification and production servers SharePoint Designer 2007 SharePoint Designer 2010 : convenience software, designed to handle site content and modify SharePoint pages in WYSIWYG (through user interface)

Qualification environment

Environment made for development and testing purposes. This environment is based on a SharePoint infrastructure: -

A Windows 2003 server (virtual) + IIS (internet services), with 16 GB of memory Visual Studio 2008 : integrated development environment (code editor, compiler and debugger) SQL developer and server Wsp builder extensions : allows to facilitate the solution packaging process for SharePoint features Windows SharePoint Services 3: Pixel’s core: an entire machine is dedicated to SharePoint usage, because of the huge number of functionalities and services running.

Nicolas ZERR

Epitech 5th year internship

17

Internship Experience Report Production environment

In order to limit bugs between the testing phase and the deployment phase, the production environment and the qualification environment are the same, excepted that production environment does not contain any programming tool. The physical maintenance of the machines on which Pixel is running is not part of the job. However, if a server breakdown occurs, it is the role of the Pixel’s developer to alert the infrastructure maintenance team.

Nicolas ZERR

Epitech 5th year internship

18

Internship Experience Report

III.

THE PROJECT 1. Project description and context Pixel, the collaborative Intranet

Pixel is Rexel France‘s collaborative Intranet. Its main goal is to share data across users, organizations units, but also partners and external suppliers. This data is generally under the form of documents, or data lists. Users can access this data, depending on their authorizations and scope of action. Pixel relies on Microsoft SharePoint technologies. Microsoft defines SharePoint itself as a data sharing platform incorporating many concepts of enterprise collaboration: -

-

-

-

-

Collaboration : expose services for better communication, data sharing between employees Portals : hosting for data sharing and privacy control XML traversal and dynamic object creation Search : allow users to search data efficiently Business forms : continuous growth of data by allowing users to create records Business intelligence : analyzing and reporting company data, create processes o Data lists : storage space for every kind of data (calendar, to do lists, announcements, business or user data) o Workflows Portals : o Site creation : websites creation for hosting collaboration tools o Authorization : definition of allowed areas depending on user profile Content management : Versioning o Filing o File management rules (naming conventions, file size, etc.) Business forms : o Add and edit data to a SharePoint list for business purposes, for instance warehouse product list o Add metadata on files Business intelligence : o Statistics o Reporting and logging o Process definition

Nicolas ZERR

Epitech 5th year internship

19

Internship Experience Report Advantages and benefits

Pixel’s advantages are: -

Available for all : pixel is an online tool, available from every computing device Improved maintenance : Pixel does not require any installation, and is automatically updated in live Direct access to data: one can easily request data access Interaction with other programs : other applications can get or set data User friendly interface: better understanding for users.

Improvement of all these aspects is possible by creating new features, because SharePoint is a component-oriented architecture. This can be done through programming development.

Figure 3 : Pixel, Rexel France’s collaborative intranet

User scope

-

People: Pixel is a centralized solution, hosted on one single place, but used through all the country by all organization units. Actually, this Intranet is not only limited to Rexel employees, but also destined for services providers. In this way, sharing files between organizations becomes easier, but it requires a strict security policy. The goal is to prevent users to access private or meaningless data for their usage.

Nicolas ZERR

Epitech 5th year internship

20

Internship Experience Report -

Organization units: all organization units’ information can be shared on Pixel: Human resources, Services, Legal, Communications… It implies the intranet manager to deal with all these departments, and to get used to deal with the different interlocutors.

Pixel is nowadays not intended to be shared with customers or world institutions.

Pixel Project migration

Pixel‘s infrastructure has been migrated from SharePoint 2007 to SharePoint 2010 on January 2012. Because this is a period of transition, it is frequent to switch tasks between the 2007 and the 2010 versions.

Nicolas ZERR

Epitech 5th year internship

21

Internship Experience Report

2. Project Tasks Manage data access security

The most frequent task is to attribute properly user rights. Often, the request consists in a ticket creation, a mail from the helpdesk or a request from a manager. Rexel has an increasing amount of collaborators, and they need more and more to access data. Although frequent, this task is not always easy : most of the time, it consists just in granting an access to a web site or a data list, but it is also possible to grant access in a very granular manner, file by file. Moreover, rights can have more complexity than just give read or write access: for instance, users should only have access to their entries, or should create but not delete. In general, user authorizations are not given individually, but users are put into groups having different level of rights. Managing rights by group provides more flexibility and convenience. In addition, Pixel is synchronized with Active Directory (software referencing organizations units, people, computers, etc.), which is the reference for people management. It is mandatory to consult it before attributing rights, in order to preserve the same logic in both applications. It is also sometimes a prerequisite to understand the user‘s role precisely: what should he do? What is his field of application? As we see, despite the fact attributing permissions is technically easy and does not take much time, it has to be done with consciousness. Website creation

Pixel is a web platform, and the intranet can be considered as a hierarchical site collection: each site can have many sub-sites, repeated for many levels. It uses Microsoft SharePoint site creation mechanism, which facilitates the process of creating site structure. Site creation implies -

Creating the web structure : sites, sub-sites, web pages Creating the data container, under the form of list of data or documents. Create the web parts in the web page, holding the interaction between user interface and data storage Fill or import data from an external source.

In this task, the most important is to understand what the user really asks for, and imagine the result he expects. The fact is that the majority of users are noninitiated and not conscious of the possibilities and limits of creation of website in

Nicolas ZERR

Epitech 5th year internship

22

Internship Experience Report SharePoint. Realizing exactly what they want can take much time: the goal is to make a compromise of what they want and what can be quickly deployed. Tool for managing key accounts constructions sites

Rexel France, due to his national reputation, has to handle key accounts, in other words, important customers. These accounts can be hospitals, hotels, prisons, towers, stadiums, etc. Indeed, Rexel provides batches of electrical supply for the construction sites. The data was stored in an Access database. But managing the information about these construction sites has become quirky, and had to be updated by more and more people. The access database was not adapted for this purpose: sharing the data with the construction sites team. Therefore, a project has been initiated on SharePoint 2007: the goal was to extract the data, and make a convenient user interface. The goals are to: -

-

Manage data about the construction sites (generic information such as the place, the type of the contract, the state of the contract, the customer data, etc.) Manage batches: a batch is an ensemble of electric supply material, such as high current / low current. Each batch has its owner, its cost, etc. Manage contacts: a contact is a person or other organization who signed the contract of batches with Rexel. Manage companies groups: often, the customers or competitors are company groups, and Rexel wants to collect and keep non sensitive data about these companies.

For this project, the tasks were -

Recreate and clean the database Migrate on SharePoint 2010 Make user forms clearer and prettier Create a modular alerting tool Create a task system management for construction sites Manage user rights Manage attachments

“Governmental contracts” file management

The Governmental contracts file management application has been undertaken following the statement that no tool on the market was dedicated to manage the governmental contracts.

Nicolas ZERR

Epitech 5th year internship

23

Internship Experience Report Governmental organizations emit an invitation to tender, and Rexel local agents respond by making an offer. However, Rexel does not award the contract each time. The goal was to provide a database on earned markets to log the amounts or, in case the contract could not be signed, keep a track of the reasons of the failure (offer too high, competitor partnership, etc.). The main purpose of this project is the ability to extract useful statistics to analyze Rexel‘s weaknesses in the process of acquiring the governmental contracts. The project has been started before the internship, but needed to be updated. In fact, the governmental contract data is provided by the regional administrative assistants. The problem stated was the data was not uniform, and even contained mistakes due to the lack of control. Moreover, the database did not take into account the contracts lifecycle (creation date, expiration date, ending notification date, etc.) The tasks in the project are -

Keep database consistency Create new standards controls for user interface Limit errors by applying constraints on the user controls Create an alert system Ensure concerned people are notified Make an automatic archiving of the database

The evolution allowed to impact more people: not only the assistant is implied in the data processing: the sales manager, the agency director and the salesmen are informed of the governmental contracts lifecycle. Pixel maintenance

Although Pixel must be accessed all the time, incidents can happen: server crashes, http server failure, or bug following a user unusual action. The job here is to check the environment status by analyzing logs. This kind of problem can be difficult to handle, because it has a big impact on user’s work: they cannot access their documents or information. Pixel main priority is to be available, so the responsible has to quickly react after the failure: the qualities required for this task are swiftness, methodology and be prepared to face this kind of situation. Pixel is constantly evolving, and sometimes an update requires a reboot of the server or a change in the configuration. Upgrade functionalities can be a tough task due to long and critical operations, and conflict solving. Patience and meticulousness have to be in order.

Nicolas ZERR

Epitech 5th year internship

24

Internship Experience Report Also, Pixel has to be accessed externally as well as internally: the Pixel maintainer must keep a close eye on the service availability for all kind of users: Rexel employees, service providers and other extern collaborators. Create automation tools

These projects results from the need to automate recurrent tasks: -

Alerting tool, more versatile than the SharePoint built-in alerting system Web Parts (web page components) to automate data importation into Pixel data lists. Automatic transfer of file to a UNC path (not out of the box with SharePoint)

Evolved and modern forms

Part of Rexel uses the ITIL (Information Technology Infrastructure Library model) model, a set of best practices. Many processes are respected in Rexel but are not automated: for instance, a user must manually fill a form and manually send it to its hierarchical superior, then to the IT direction, and so on. This subproject has begun with a user form to handle requests for hardware and software for a user‘s workstation. The main goal is to create modern and reliable forms, and to send forms data to the request handler entity (support, IT direction, etc.): -

Create user-friendly forms Retrieve automatically data from profiles through web services Establish database of the different choices the user can perform Create a validation workflow

Other projects of forms to automate the processes were born following the success of the deployment of these forms.

3. New tasks and project future At the end of the internship, many points of improvement have been observed, and will probably result in new project tasks: Modernizing the forms

The result of that is a better collaboration of users, and allows making statistics. The next step is to go further and use the collected statistics to improve user experience and support efficiency by sibling more precisely user requests.

Nicolas ZERR

Epitech 5th year internship

25

Internship Experience Report SharePoint 2010 migration:

SharePoint 2010 offers new possibilities in term of development, data management and ergonomic. Many applications on Pixel can be improved. For the moment, only the porting of the key account constructions sites management application has been done. Future tasks will consist in importing the websites and applications from the old Pixel version to the new one. Write users guide and specifications

As in each project, documentation has been produced. It is the role of the intern to produce documents about the new features, but also operating user guides, specifications, etc. For each part of the project, documentation has been written, and already existing documentation has to be modified. Documentation is one of the prior tasks, because it facilitates communication between the project owner, the intern and the next persons who will be in charge of the project.

Nicolas ZERR

Epitech 5th year internship

26

Internship Experience Report

Second scenario: convince the internship mentor to be in charge of a project In this scenario, the intern must show to his mentor he can take the responsibilities of a new project. We can assume that the mentor will look -

On the progress made: are the technical and soft skills sufficient? The project results: has the intern been able to meet the project requirements? How the project was managed: what were the keys of the success and efficiency in the project tasks management?

Nicolas ZERR

Epitech 5th year internship

27

Internship Experience Report

I.

PROGRESS MADE 1. Technical skills

The first proof of improvement, compared to the beginning of the internship period, is the number of skills I have mastered, learning by myself through books and mostly Internet through SharePoint communities. SharePoint is a huge platform, using many techniques, concepts, languages and terminology. It requires a lot of time reading and practicing before completely understand the machinery. In case of another project, mastering the concepts from the beginning avoids technology choices errors during the design phase. During the development phase, it allows to focus on coding efficiently rather than reinventing the wheel because of possibilities ignorance or misuse. Take someone who already knows how to deal with these technologies in a new project is therefore a great time saving. Although SharePoint has its own features and software design, the technologies used are widely spread and used in other contexts, especially Microsoft ones. In that case, this experience gives the ability to have a good opinion during decision meetings. Moreover, the internship experience allowed me to discover tools (JIRA) or go deeper with the ones already known (the Office Suite). They were used for project management, bug tracking, incident resolution, statistics, data migration... Here again, be at ease with every feature of software is a great save of time and makes communication clearer and faster. The following lists describe the IT knowledge acquired: Programming languages

-

C# : Main programming language on Microsoft Platforms JavaScript : language used by web browsers to process document transformation on client side

Web Technologies

-

HTML : markup language for document structure definition, based on XML CSS : specification for styling documents and applications ASP.NET : Microsoft language for creating dynamic web pages

Software

-

JQuery : a convenient software library to perform JavaScript actions more easily Active Directory

Nicolas ZERR

Epitech 5th year internship

28

Internship Experience Report -

Microsoft Visio 2010 Microsoft Access 2010 Microsoft Server 2003 and 2008 IIS : Microsoft 's web server Microsoft InfoPath : design and publish elaborated forms Microsoft SharePoint designer 2007 and 2010 Microsoft Visual Studio 2010 WSPBuilder (widespread community tool dedicated to SharePoint development JIRA : Issue and project tracking software

Programming paradigms and IT culture

-

-

DotNet Framework : LINQ : Language INtegrated Query, used in combination with C# to perform content queries CAML: markup language for queries Web services SOAP / REST : protocols based on XML, often used in a remote procedure call architecture

2. Soft skills Relationship with colleagues and hierarchy is the key of success in managing people resources. During the internship, I have been able to collaborate with a large amount of persons. I have identified each employee’s role, and am able to redirect people requests to the right person. Knowledge of processes and rules has also been developed: the ability to inform people whether they are respecting the processes and if not, explain them how to do and who to contact.

Nicolas ZERR

Epitech 5th year internship

29

Internship Experience Report

II.

PROJECT MANAGEMENT 1. Working methods Meetings

Regular meetings occur to give the project directions. I was independent in organizing my time, and took a particular attention on taking notes during meetings in order to keep a track of what has been said and evict ideas conflicts. Requests and task tracking

The addition of a new feature can be described by the following process: -

User request submit: a user submit a form, expressing his need Request tracking : If the project is validated, a new entry is pushed in JIRA, the project tracker, describing the need Project cost estimation : projected cost in terms of time, money and infrastructure Specification writing: description of project features, used technologies, resources usage, etc. Preparation phase : ensure that the environment is suitable and ready Coding phase : programming features, Testing and debugging : track bugs, correct them on the qualification environment Test cases : verify if actions the user can do result in the expected way Deployment on the production environment.

Working method

The following method I applied to the main project tasks is the following schedule: -

Formalize the expression of the need by the customer Eventually estimate costs Validate the produced document Documenting about technologies Write specifications Validate the specifications by the mentor or director Development phase In parallel, write user and developer documentation Test features Produce deliverable Deploy the solution and commit documentation in the documentation storage.

Nicolas ZERR

Epitech 5th year internship

30

Internship Experience Report Using this method of work allowed me to have a better management of the time because I was able to situate the project advancement. It is also a better way to communicate the progress of the project to the customers and managers, and reassure them about the schedule and the respect of the deadline. External help resources

The first step in the internship was to read books about SharePoint, in order to better understand the Pixel working. Pixel is an IT project, and nowadays many users get help from the Internet more and more. I have developed efficient research skills during my internship, and for every problem, I could find a solution or a hint by help from Internet. I could also benefit of Rexel’s partnership with Microsoft and Expertime to get help and documentation about the Microsoft environment.

2. Project quality I have put an emphasis on acquiring the best programming techniques, and use the most recent technologies. The objective was to produce applications more flexible, scalable, and efficient. I also focused on bug tracking, to reduce maintainability costs.

Nicolas ZERR

Epitech 5th year internship

31

Internship Experience Report

III.

PROJECT RESULTS 1. Results Project tasks states

Since Pixel is a project constantly evolving and with a promising future, and because of the number of possibilities of improve functionalities, we cannot speak about finishing the Pixel project. However, all the tasks tracked during the six months in the request tool were successfully implemented. At the end of the internship, the following features have been integrated in the production environment and are subsequently finished: -

The The The The The The The

construction site project government contract management application software and hardware request form authorization management forms custom fields custom web parts automation tool for import Excel files automatically.

The website automatic creation feature is still in development. The fact this task is not terminated is mainly because of two aspects: -

-

Microsoft, the editor of SharePoint has limited technology choices for his cloud version, yet the project had to be compatible with the cloud. Fortunately, I have been able to reduce technologies dependencies, and keep the functionalities fully unmodified. The project schedule and owner have changed during the conception phase: I have inherited of this subproject, initially intend to be developed by an external team, therefore the planning has changed.

Results analysis in term of money

-

Costs reduction : the projects were produced internally Project saves : the applications did not require anything else than a SharePoint environment, so no material cost needed

Results analysis in term of organization benefits

-

Mastered processes Time gained The generic alert application could be reused for other projects The evolved form project gave birth to other similar projects, such as application authorization requests.

Nicolas ZERR

Epitech 5th year internship

32

Internship Experience Report

2. Personal contribution to the project Throughout the internship, I have seen how the company was organized, and then discover the role of each human resource, especially the architect. Indeed, being in a large structure helped me to see the variety of missions and occupations of each job. Being in an international company also reminds me of the issue of the globalization: it is mandatory to learn how to work with different cultures. I did not face this problem, but I could see that it is a recurrent problem.

Fix bugs from Pixel migration process failures

Pixel migration to SharePoint 2010 was made by an external company. However, the migration process has succeeded in installation but some bugs appeared. I had entered in contact with this company to solve the last problems. Some issues had a big impact on user experience or internal functioning of SharePoint. With the help of the company, I have been able to solve all the issues to provide the best user experience once collaborators will start to use SharePoint 2010. Implied in user profile management with Lync

The Lync software is an instant messaging tool which allows searching people by skills. Indirectly concerning Pixel project, I have been interested in this project and participated to Lync integration in the environment, by meeting Microsoft technical experts. User usage of SharePoint improvement

When making a project, I have based the strategy on focusing user needs: understand people interaction, preferences and feedback allowed me to modify the environment to provide a better collaboration between people, and more efficiency of data feeding by the overall users.

Nicolas ZERR

Epitech 5th year internship

33

Internship Experience Report

Third scenario: convince a hierarchical superior to take the responsibilities of a complete project In this scenario, the student has to demonstrate to an influential person in the company to get the ownership of a new project. The goal here is to prove that he will be the suitable person for becoming the project manager. In this part, we will show: First, that the company background has been understood: the corporation knowledge, its goals, and its culture. Second, show that he has natural or learnt management skills that can be reused for the leadership of a new project. Third, that interest is shown for the project, by explaining the personal intentions for the new project, in which way the project will be managed and what will make the difference compared to another person.

Nicolas ZERR

Epitech 5th year internship

34

Internship Experience Report

I.

COMPANY KNOWLEDGE 1. Company business knowledge

Contacts and interlocutors: Knowing the right person for the right question

During the internship, I have dealt with many collaborators: working on the core of the communication tools implies a continuous flow of user requests for content change. Since Pixel applies to different domains, the first task was to identify the user's role in the company, in order to have a better idea of their needs. Consequently, I have been able to build up a set of contacts for each field of application. Also, because Pixel is the central point for data access and I have been in charge of granting access to users, I got a good overview of the company hierarchy, essentially by analyzing the people groups. Computer science notions

As in every domain, IT has its own vocabulary that has to be mastered to fully understand needs and requests. In fact, I have done an effort on understanding the meaning of enterprise notions: -

Documentation: I am aware of conventional naming, Rexel document templates structure, and because I have been involved in many projects, I know how to write them efficiently : during the internship, many documents had to be written : need expression, specifications, architecture documents, cost estimation, operating user tutorials, reports, technical documentations, etc. Having a practice on writing the documents in the Rexel allowed me to express my synthesis skills, generally appreciated with satisfaction.

-

Environments: During the internship, I discovered a lot of facets of computer science, outside of the development process. This is due to the fact I have been surrounded by many project leaders, or people responsible for a particular domain. I discovered many environments, such as integration, qualification, production. This experience made me have a better idea of each environment problematic and constraints.

Enterprise notions

A good manager has to understand how what makes his company unique. In order to understand Rexel’s specificities, I have taken time to read documentation, at the beginning of the internship, about the following subjects:

Nicolas ZERR

Epitech 5th year internship

35

Internship Experience Report -

product names jobs Projects Technical words Business world Project descriptions Ways projects are documented People organization.

Moreover, I have carefully listened to people oral exchanges in order to have a better idea of what they do in their job and learn new vocabulary and corporate knowledge.

2. Understanding company goals Rexel has long-term and short-term objectives: In Rexel‘s case, the company mission is clearly to provide quality products and to promote customer satisfaction. Employees are expected to provide quality service, respect quality standards and above all meet customers and users need. Long term goals

increase company profit margins: Rexel tries to reduce its production costs multiply the product offers: product diversity is a source of innovation and therefore profit Diversify services: especially in IT, Rexel offers services to their customers and their users, to answer for more and more specific needs Expand in size or location: Though Rexel France is present almost everywhere in France; new agencies are opening, resulting in more efficient and targeted services. Improve Rexel’s image, by demonstrating service quality and improve the worker’s jobs quality. Rexel also wants to spread its values: dynamics, efficiency, cooperation, professionalism. Short-term goals

Use the newest technologies: For instance, the use of the latest versions of SharePoint and JIRA is a proof that Rexel IT department tries to always provide the latest features to the collaborators. Streamline production or services: Rexel changes its organization to provide a more fluent and clearer: improve workflows, improve communication.

Nicolas ZERR

Epitech 5th year internship

36

Internship Experience Report

Being a manager requires to have an overview of the project technically, but also strategically: the manager has to think beyond the project, for the whole enterprise. Understand the company goals in a larger scope helps in taking decisions to ensure that a project takes the good direction. More than that, a project fully compliant with the overall strategy ideas can become a model, and other company projects can get inspired and follow the example.

3. Understanding company culture Every workplace has a culture. A company's culture often reflects the managers’ philosophies. All along my internship, I got an interest in the company culture. I could observe way people act (both on and off the job), present themselves, how they work. I also observed the way workers interact with each other’s, with supervisors and across the departments. Although a company culture is really instituted, the great amount of people in Rexel also offers diversity, not only by look and feel, but also for their skills and their personality. Being a team leader, I would pay a particular attention on respect the ethics and the company culture, not only to have a good image in the company but also for users. I applied the essential keys of succeeding in being an integrated employee. -

know and respect the company's culture display interest in the company have a positive and optimistic attitude pay attention to expected norms of behavior get a better understanding of the co-workers situation and job by developing relations with them.

The result of this experience is that I gained confidence with my co-workers, and that they were even asking for advice on several subjects.

Nicolas ZERR

Epitech 5th year internship

37

Internship Experience Report

II.

MANAGEMENT SKILLS 1. Understand the manager role Being surrounded by many project leaders, I could get their feedback on my work, exchange opinions, and get inspired by their own experience. In fact, the Pixel team, despites its small size, has to exchange with a lot of other project leaders or managers, whether from IT department or transversal departments. Although my role was not really being a project leader, I got a certain freedom in managing Pixel project tasks and tracking. Observing continuously managers, I have been able to discern what their role is and which tasks they should accomplish. A project leader has to make the following tasks -

Plan and organize meetings Encourage processes improvement Solve problems Make decisions, Planning tasks, Delegate tasks, Observe and analyze critical points Teach to the other team members.

During the internship, I have observed how my advisors were handling their project, but have also been pro-active by organizing meetings, creating tasks and solving problems.

Nicolas ZERR

Epitech 5th year internship

38

Internship Experience Report

2. Team work and communication I have remarked that in Rexel, everyone has a role in the project strategy. The technicians report advancement and errors and advice how to avoid them in the future. Managers are synchronizing teams and give them the directions to take. But everyone has to respect each other’s work: respect for the dignity and worth of others, respect for individual differences. Employees just tell the fact as they are: honest and open communication promotes better cooperation. For technicians, it allows them to better admit their error, and for managers have a better idea of the project situation. I also have mastered IT communication tools. Mail, telephony, tracking tools, but also instant messaging used efficiently depending on the context can be a great time saver and facilitates communication. I tried all along the internship to follow the employees’ professionalism in teamwork: be prompt and reactive in treating other’s requests, treat others with respect, be patient and take time to explains things as clear as possible, being a good team player and coming up with innovative solutions. I have put an accent on respect their standards, their job schedule.

Nicolas ZERR

Epitech 5th year internship

39

Internship Experience Report

III.

PERSONAL INTERESTS FOR A NEW PROJECT As the Pixel project main actor, I have noticed ways of improving the users and collaborator work, not on a technical aspect but rather on a business or moral problematic. I have identified three points I would focus as a project manager: process automation, zoom in user needs, and reinforce collaboration by sharing knowledge.

1. Process automation Many processes are nowadays still handmade or only semi-automatic. During my work, I have pointed on several aspects that could be made by a computer, especially all user requests and workflows. Automation simplifies the process: for instance, once a form was completed, there was a chain of people to validate the process, and a long time can occur to pass data from a user to another. It is a gain of time and simplicity: for people in charge of the requests, they just have to focus on the content (the request resolution) and not the form, which is standardized. For users that initiate the request, rather than spend time on formatting and understanding the processes, automation can help them to focus on the request elaboration. Automation also gives a better control of the data passing through users and applications. Because every request is recorded, it becomes possible to make an analysis of the collected data, and use this data to offer a better user experience. That is why during the allover experience, I promoted automation of frequent tasks and, in collaboration with my supervisor, initiated subprojects to lighten the processes.

2. Get closer from users’ needs As Pixel was the centric platform for users’ data access, I often could discuss with them about their job, and particularly what they expected from IT to do. Because non-specialists users often have a candid point of view, they often point on pertinent aspects that can be revised for their own needs, and they are the best placed to know how to improve their work. To get closer from users’ needs, data must be collected on the usage of their application, on the difficulties they meet, and analyze all the use cases.

Nicolas ZERR

Epitech 5th year internship

40

Internship Experience Report User opinion is also a great factor in a manager’s decision: if not fitting with the users requirements, the consequences can be a reject of the user and a drop in user motivation of using his unsuitable tools. Therefore, in the new project, I would perform user surveys, to compare their feedback with the steering committee decision. If both merge, the project has great chance to be a success.

3. Reinforce collaboration: knowledge sharing Collaboration represents a huge amount of time in an employee’s schedule: schedule meetings, communicate about events, alert people of changes, produce documents are part of the job. Team synchronization is the key for a successful project. However, it is often the case where employee’s schedules do not fit with each other’s. Synchronization requires time, therefore money. Improving the efficiency of meetings is a performance key, and this can be achieved by letting people access and produce all enterprise knowledge and inform them on the fly: nowadays a “tweet” can have more impact than a heavy document. Put in place a knowledge database will result in asynchronous collaboration. For instance, one can read the critical reviews and notes of another collaborator about a project or a specific domain. Once they meet, they are already informed of the basics and the last updates about the subject, and they can focus on the real subject rather than explaining again the context and last events. The other side effect of is users are more independent by learning by themselves. The gain of autonomy can relieve the training staff, and people can get a better usage of their tools and they can better manage their time. To conclude, although this does not only apply to a specific project, I really think improve employees work efficiency and comfort is maybe the main role of the manager, and would be one of the main aspects I would focus on.

Nicolas ZERR

Epitech 5th year internship

41

Internship Experience Report

CONCLUSION The internship experience is a deep dive in the business world. Although Epitech‘s main goal is to prepare its students to enter the professional life with lots of projects, the corporate environment, tasks and people offer a better context for one’s skills improvement : collaborators feedback and experience really helped me to work on myself, it was a satisfaction to work in good conditions. It is a proof of professional capability, everyday challenging myself to overcome difficulties: I mainly improved myself in learning faster, deal with people, and be more efficient in my work. The learnt skills will be reusable for next projects. I have been able to discern what my weaknesses are, and I now try to diminish them or make them vanish. During these six months, many tasks have been done, and often their impact and results were reported: users and managers expressed their feedback and satisfaction: this is a mark of gratitude, and proves that I have followed the same strategy than the IT department: continuously improve services quality and availability. I did not expect to deal with so many kinds of jobs, and even learn about new ones in the domain of IT. I also dealt with other business units collaborators directly, and quickly developed teamwork skills with them. Although I was a service provider employee, I felt integrated to the company: I was in charge of my project, and had a centric role in the company. Rexel France headquarters is a suitable place for a third cycle study experience, because of its size, its dynamics and its skilled people. Even if the internship subject does not require guru technical competences, it is a great chance to develop its soft skills and project management skills. I have an excellent feedback on the job and the company: the working conditions are pleasant; people are open minded and very professional. It constitutes an interesting, enhancive and rich experience I can add to my bag, as well for skills as contacts. This experience gave me a better projection of my carrier plan, a clearer idea of my future job, with the will to become either a project manager or architect. To conclude, I can say this experience was a success both for Square-IT and me: at the end of the internship, I have been hired in Square-IT with a long term contract: I will still work for Rexel for a certain amount of time, and then integrate a new greater project, and apply all I learnt during the 5th year internship to it.

Nicolas ZERR

Epitech 5th year internship

42

Internship Experience Report

REFERENCES AND BOOKS References

Rexel Group website http://www.rexel.com Rexel France website http://www.rexel.fr/ Microsoft support website http://support.microsoft.com/?ln=fr Open Source project hosting, mainly SharePoint components http://www.codeplex.com/ Information about SharePoint http://sharepoint.microsoft.com/fr-fr/Pages/default.aspx Information about webparts : http://office.microsoft.com/fr-fr/sharepoint-server-help/composant-webpartimage-HA010024051.aspx

Books

Microsoft SharePoint 2007 Development Unleashed By Kévin Hoffman

Nicolas ZERR

Epitech 5th year internship

43