Soutenance de stage – Antoine Chauvin – Introduction



Soutenance de stage – Antoine Chauvin – Introduction

0 2


soutenance2016


On Github Blackrush / soutenance2016

Soutenance de stage

Antoine Chauvin

Université du Havre 2015-2016

http://blackrush.github.io/soutenance2016/

Introduction

Présentation de l'entreprise Mon rôle au sein de l'entreprise Le développement d'ERP Migration de l'infrastructure

Présentation de l'entreprise

SIQUAL

https://www.siqual.fr/ @SIQUAL_FR Siqual

SIQUAL

  • depuis 2014
  • Seine Innopolis, à Rouen
  • Le Vaisseau, au Havre
  • 16 employés
  • moyenne d'âge ~26 ans
  • maintenance, sécurité, ingénierie

Mon rôle au sein de l'entreprise

Mon rôle au sein de l'entreprise

  • concepteur/développeur web
  • développement odoo
  • administration système
  • gestion de projet
  • relation client

Mon rôle au sein de l'entreprise développement odoo

  • comptabilité française et internationale
  • gestion des ventes
  • gestion des relations clients
  • gestion des achats, approvisionnements, et stocks
  • gestion des ressources humaines
  • base partenaires
  • base articles

Mon rôle au sein de l'entreprise administration système

  • provisioning
    • online.net
    • OVH
  • déploiements
    • nouvelles versions
    • fixtures
  • maintenance
    • mises-à-jour
    • sécurité

Mon rôle au sein de l'entreprise gestion de projet

  • prise de besoin
  • estimation temps-homme
  • priorisation
  • organisation
  • livraison

Mon rôle au sein de l'entreprise relation client

  • déplacements
  • à distance
  • pilotage

Le développement d'ERP

Le développement d'ERP

  • base de données PostgreSQL
  • développement Python
  • vues XML
  • architecture MVC
  • framework Odoo
  • logiciel Odoo

Le développement d'ERP

# -*- coding: utf-8 -*-
from openerp import models, fields, exceptions, api, _

class ResPartnerGoogleContact(models.Model):
    _name = 'res.partner.google_contact'

    partner_id = fields.Many2one('res.partner', ondelete='cascade')
    user_id = fields.Many2one('res.users', ondelete='cascade')
    uri = fields.Char()
          

Le développement d'ERP

select extract(month from m.date) as mon,
       extract(year from m.date) as year,
       sum(m.product_uom_qty) as qty
from stock_move m
inner join stock_picking_type pt on pt.id=m.picking_type_id
where m.product_id=%s
  and m.state='done'
  and pt.code='outgoing'
group by year, mon
order by year, mon
          

Le développement d'ERP

<record id="form_partner_contacts" model="ir.ui.view">
    <field name="name">form_partner_contacts</field>
    <field name="inherit_id" ref="base.view_partner_form"/>
    <field name="model">res.partner</field>

    <field name="arch" type="xml">
        <field name="name" position="after">
            <button name="btn_google_contacts_import"
                    string="Import"
                    type="object"
                    class="oe_link"
                    groups="base.group_no_one"/>
        </field>
    </field>
</record>
          

Le développement d'ERP

~/Workspace/siqual/erp_boilerplate(master ✔) tree
.
├── __init__.py
├── __openerp__.py
├── controllers
│   └── __init__.py
├── i18n
├── models
│   └── __init__.py
├── reports
├── security
└── views

6 directories, 4 files
          

Le framework odoo

  • couche réseau HTTP/XMLRPC
  • couche données ORM
  • couche présentation HTML/CSS/JS
  • authentification
  • autorisation
  • internationalisation
  • localisation
  • tests unitaires
Bootstrap, jQuery, Backbone, D3

Le logiciel odoo

  • ...
  • e-mail en un clic & personnalisable
  • e-commerce
  • point de vente
  • suivi de production
  • mass-mailing & sondages
  • gestion de projet
  • connexion aux banques
  • messagerie intégrée
  • chat global (comme Slack)
  • intégration Google
- gestion de projets kanban - paul marius - restauration - libre-service

Migration de l'infrastructure

Le mouvement DevOps

Le mouvement DevOps

  • admins systèmes toujours présents
  • rapprocher les équipes dév & ops
  • réduire les temps de livraison
  • automatiser le plus possible

Le mouvement DevOps

  • intégration continue
  • déploiement continu
  • provisioning rapide & temporaire
  • monitoring intelligent

Migration de l'infrastructure

  • Git
  • Docker
  • Ansible
  • Jenkins
- hosts: odoo
  tasks:
    - name: add authorized keys
      authorized_key: user="{{ansible_user}}" key="{{item}}" state=present
    - name: install docker
      apt: name=docker.io state=installed
    - name: start docker service
      service: name=docker state=running enabled=yes
    - name: install docker python library
      pip: name=docker-py state=present
    - name: connect to docker registry
      docker_login:
        registry: siqual.fr
          
- name: launch db container
  docker:
    name: db
    image: postgres:9.5
    restart_policy: always
    volumes:
      - "/var/lib/postgresql/data:/var/lib/postgresql/data"
          
- name: launch nginx container
  docker:
    name: nginx
    image: nginx:alpine
    state: started
    restart_policy: always
    links:
      - "web"
    ports:
      - "80:80"
      - "443:443"
          

Conclusion

Conclusion

SIQUAL me permet d'exercer ma passion entouré d'une équipe extraordinaire et m'a permis d'acquérir des responsabilités là où d'autres entreprises n'auraient pas pu et c'est avec plaisir que je poursuis l'aventure

Je réponds à vos questions

https://www.dropbox.com/s/yol8bu8wk98exlf/Rapport%20de%20Stage%202016.pdf?dl=0
https://github.com/Blackrush/soutenance2016 - Reveal.js - FontAwesome
1
Soutenance de stage Antoine Chauvin Université du Havre 2015-2016 http://blackrush.github.io/soutenance2016/