Alternance - Développeur(se) NET F/H
ITGA
Saint-Grégoire, FR1 month ago
94 views43 saves0 applies
Prepare for this role
Job Type
internship
Description
Qui sommes-nous ? Chez ITGA, notre cœur de métier, c’est l’analyse et la détection des polluants du bâtiment. Un enjeu essentiel de santé publique et de sécurité, pour un futur moins pollué et plus vertueux. Rejoindre ITGA, c’est intégrer un groupe à taille humaine, présent en France et à l’international, où engagement, innovation et collectif sont des valeurs fortes. Ton rôle Dans le cadre de notre développement, nous recherchons un(e) alternant(e) développeur(se) .NET en contrat d’apprentissage pour renforcer notre équipe technique. Au sein de l’équipe de développement, tu participeras à des projets applicatifs concrets, avec de réelles responsabilités techniques et un accompagnement structuré tout au long de ton alternance. Tes missions principales : Le développement et l’évolution d’applications en .NET / .NET Framework La conception et l’implémentation de nouvelles fonctionnalités La maintenance corrective et évolutive La résolution de bugs et l’optimisation des performances La participation aux revues de code et aux échanges techniques La rédaction de code propre, lisible et maintenable Environnement technique Langage : C# Frameworks : .NET / .NET Framework / ASP.NET / ASP.NET Core Front-end : Angular , HTML, CSS, JavaScript Bases de données : SQL Server , MongoDB Outils & DevOps : Git, Visual Studio, Docker, CI/CD, Ansible Profil recherché Tu es étudiant(e) en formation Bac+3 minimum en informatique ou en développement logiciel. Tu disposes de bonnes bases en C# et en programmation orientée objet. Tu portes un intérêt particulier aux architectures applicatives et aux bonnes pratiques de développement. Tu es curieux(se) et rigoureux(se), apprécies le travail en équipe et tu sais t’impliquer pleinement dans des projets techniques. Alors postule vite ! Voici les étapes de ta candidature : Premier entretien téléphonique ou visio' (20 min) avec Marine, Elisa ou Maëla, nos supers Chargées de Recrutement ! Entretien avec ton futur manager au sein de l'agence. Tu recevras une réponse sous quelques jours à la suite de cet entretien. Ce que l'on te propose : Un accompagnement technique et pédagogique. Des missions concrètes avec montée en compétences progressive. Un environnement technique structuré et collaboratif. Réf: 50f2a8f9-a3e1-43d4-b898-c321c3e0fe72 Je postule à cette offre Alternance - Développeur(se) NET F/H Alternance - 12 mois Temps plein Saint-Grégoire Civilité * Madame Monsieur Mx Nom * Prénom * E-mail * Numéro de téléphone * Disponibilité * Sélectionnez votre disponibilité immédiate 15 jours 1 mois 2 mois 3 mois + 3 mois Attentes salariales (Brut/an) * Sélectionnez la tranche de salaire Inférieur à 15 000€ 15 000€ - 20 000€ 20 000€ - 25 000€ 25 000€ - 30 000€ 30 000€ - 35 000€ 35 000€ - 40 000€ 40 000€ - 45 000€ 45 000€ - 50 000€ 50 000€ - 55 000€ 55 000€ - 60 000€ 60 000€ - 65 000€ 65 000€ - 70 000€ 70 000€ - 75 000€ 75 000€ - 80 000€ 80 000€ - 85 000€ Supérieur à 85 000€ CV * Choisir un fichier Format: .PDF, .DOCX, .DOC, .JPG. Poids max. : 2 Mo. Lettre de motivation Choisir un fichier Format: .PDF, .DOCX, .DOC, .JPG. Poids max. : 2 Mo. Dans le cadre de la création de votre profil de candidature sur le site carrière de la société ITGA , les informations recueillies ci-dessus sont traitées selon la base légale des mesures précontractuelles à la mise en relation avec la société ITGA et à la conclusion d’un éventuel contrat de travail avec celle-ci, et selon l’intérêt légitime à la constitution d’une CVthèque. Aucun transfert hors de l’Union Européenne ne sera opéré. Sauf action de votre part, la durée de conservation de vos données n’excède pas 2 ans. En application des standards et des politiques de sécurité (PSSI) en vigueur, les mesures techniques efficaces et optimales sont appliquées aux traitements des données (accès et protocoles sécurisés, gestion des droits et administration, sensibilisations des collaborateurs, etc.). Conformément au règlement Européen relatif à la protection des données, vous disposez d’un droit d’opposition, d’accès de rectification, de suppression des présentes données. J'accepte que l'entreprise ITGA conserve mes données personnelles pendant une durée de 2 ans afin d'être recontacté(e) pour de nouvelles opportunités --> --> Je postule Merci de bien vouloir compléter tous les champs obligatoires. (Les champs obligatoires sont suivis d'une *) * Champs obligatoires Partager l'offre &via=We_Recruit_" target="_blank" class="hover-color1"> Partager par email --> (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) { return; } js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/fr_FR/sdk.js#xfbml=1&version=v2.3"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk')); window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https://platform.twitter.com/widgets.js"; fjs.parentNode.insertBefore(js, fjs); t._e = []; t.ready = function(f) { t._e.push(f); }; return t; }(document, "script", "twitter-wjs")); $(".dropdown dt a").on('click', function() { $('ul[data-id=' + $(this).attr('data-id') + ']').slideToggle('fast'); }); $(document).bind('click', function(e) { var $clicked = $(e.target); if (!$clicked.parents().hasClass("dropdown")) { $(".dropdown dd ul").hide(); } }); $('.mutliSelect input[type="checkbox"]').on('click', function() { var inputId = $(this).attr('class'); var selectId = inputId.replace('custom-control-input checkbox-color1 checkbox-element question-', ""); var title = $(this).closest('.mutliSelect').find('input[type="checkbox"]').val(), title = $(this).val() + ","; if ($(this).is(':checked')) { var html = ' ' + title + ' '; $('.multiSel-' + selectId).append(html); $(".hida-" + selectId).hide(); } else { $('span[title="' + title + '"]').remove(); var ret = $(".hida"); $('.dropdown dt a').append(ret); } }); var isSafari = !!navigator.userAgent.match(/Version\/[\d\.]+.*Safari/); if (isSafari) { var form = document.getElementById('form'); // form has to have ID: form.noValidate = true; form.addEventListener('submit', function(event) { // listen for form submitting if (!event.target.checkValidity()) { event.preventDefault(); // dismiss the default functionality document.getElementById('errorMessageDiv').style.display = 'block'; } }, false); } var questions = []; questions.forEach( function(q) { $('.question-' + q.id) .click( function() { if (q.type === 2 || q.type === 3) { var query = q.choices.find( function(c) { return $('#question-' + c.id).is(':checked'); }); if (query) { $('.question-' + q.id).attr("required", false); } else { $('.question-' + q.id).attr("required", true); } } }); }); (function(d, s, id) { var js, iajs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) { return; } js = d.createElement(s); js.id = id; js.async = true; js.src = "https://apply.indeed.com/indeedapply/static/scripts/app/bootstrap.js?hl=fr"; iajs.parentNode.insertBefore(js, iajs); }(document, 'script', 'indeed-apply-js')); $(".checkbox-element").each((index, element)=>{ $(element).on('click', function(){ var $this = $(this); var questionId = $this.data('question-id'); var otherCheckboxes = $('.question-'+questionId); var checkedElements = otherCheckboxes.toArray().filter(i=>$(i).is(':checked')); var questionInput = $("#question-"+questionId); questionInput.val(checkedElements.length ? "OK":""); questionInput.trigger('focus'); questionInput.trigger('blur'); window.formValidator.element("#question-"+questionId); }) }) $(document).ready(function() { $('.description-blocks a').attr('target', '_blank'); $('input[type="file"]').each(function(index, element){ $(this).change(function(){ $(this).blur().focus().blur(); }); }) }); $('#form').on('keyup keypress', function(e) { var keyCode = e.keyCode || e.which; if (keyCode === 13) { e.preventDefault(); return false; } }); $.validator.methods.phoneNumber = function(value, element) { return this.optional(element) || /^((\+\d{1,3}(-| )?\(?\d\)?(-| )?\d{1,5})|(\(?\d{2,6}\)?))(-| )?(\d{3,4})(-| )?(\d{4})(( x| ext)\d{1,5}){0,1}$/.test(value); }; window.formValidator = $("#form").validate({ ignore: [], rules: { phone: { required: true, phoneNumber: true }, }, errorPlacement: function(error, element) { console.log(error, element); error.addClass('invalid-feedback'); if (element.is('input[type=radio], input[type=checkbox]')) { element.parent().parent().append(error); } else { error.insertAfter(element); } }, highlight: function(element, errorClass, validClass) { $element = $(element); if ($element.is('input[type=hidden].qcm-field')) { var questionId = $element.data('question-id'); var div = $('div[data-question-id="' + questionId + '"]'); div.addClass(errorClass); div.find("button").addClass(errorClass); div.removeClass(validClass); div.find("button").removeClass(validClass); } else { $element.parent().addClass(errorClass).removeClass(validClass); $element.addClass(errorClass).removeClass(validClass); $element.parent().find("button").addClass(errorClass).removeClass(validClass); } }, unhighlight: function(element, errorClass, validClass) { $element = $(element); if ($element.is('input[type=hidden].qcm-field')) { var questionId = $element.data('question-id'); var div = $('div[data-question-id="' + questionId + '"]'); div.addClass(validClass); div.find("button").addClass(validClass); div.removeClass(errorClass); div.find("button").removeClass(errorClass); } else { $(element).parent().removeClass(errorClass).addClass(validClass); $(element).addClass(validClass).removeClass(errorClass); $(element).parent().find("button").addClass(validClass).removeClass(errorClass); } }, submitHandler: function(form) { var shouldSubmit = true; if (shouldSubmit) { form.submit(); var button = $('button[type="submit"]'); $('#loader').removeClass("hidden"); $('#submit-button').addClass("hidden"); $($('.cta-apply')[0]).addClass('hidden'); $($('.cta-apply')[1]).addClass('hidden') setTimeout(function() { button.attr('disabled', 'disabled'); button.prop('disabled', true); }, 0); } }, errorClass: "is-invalid", validClass: "is-valid", }); jQuery(document).ready(function($) { $(document).on('click', '.dropdown-menu', function(e) { e.stopImmediatePropagation(); e.stopPropagation(); }); }); jQuery.extend(jQuery.validator.messages, { required: "Ce champ est obligatoire", phoneNumber: "Ce numéro de téléphone est invalide", email: "Veuillez indiquer une adresse e-mail valide", }); var placeSearch; var autocompletes = []; var componentForm = { street_number: 'short_name', route: 'long_name', locality: 'long_name', administrative_area_level_1: 'short_name', country: 'long_name', postal_code: 'short_name' }; function initAutocompletes() { $('.custom-autocomplete').each((index, element) => { autocompletes.push({ element: element, autocomplete: new google.maps.places.Autocomplete(element, { types: ['geocode'] }) }); }); } function geolocate(element) { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(function(position) { var geolocation = { lat: position.coords.latitude, lng: position.coords.longitude }; var circle = new google.maps.Circle({ center: geolocation, radius: position.coords.accuracy }); var autocomplete = autocompletes.find(i => i.element === element).autocomplete; autocomplete.setBounds(circle.getBounds()); }); } } $(function() { $(".datepicker").each( function(index, element) { var $elem = $(element); $elem.datepicker($.datepicker.regional["fr"]); }); $(".ui-datepicker").addClass("font2"); }); { "@context" : "http://schema.org/", "@type" : "JobPosting", "title" : "Alternance - D\u00E9veloppeur(se) NET F/H", "datePosted" : "2026-05-15T15:16:46+00:00", "hiringOrganization": { "@type": "Organization", "name": "ITGA" , "logo": "https://wio.blob.core.windows.net/werecruit/492aa266-1fa8-424e-b45c-77b5c63c9829.jpeg" }, "jobLocation": { "@type": "Place", "address": { "@type": "PostalAddress", "addressLocality": "Saint-Grégoire", "addressRegion": "Bretagne", "postalCode": "35760", "addressCountry": "FR" } }, "description" : "\u003Cp\u003EDans le cadre de notre d\u0026eacute;veloppement, nous recherchons un(e) alternant(e) d\u0026eacute;veloppeur(se) .NET en contrat d\u0026rsquo;apprentissage pour renforcer notre \u0026eacute;quipe technique.\u003C/p\u003E\n\u003Cp\u003EAu sein de l\u0026rsquo;\u0026eacute;quipe\u003Cstrong data-start=\u0022290\u0022 data-end=\u0022330\u0022\u003E \u003C/strong\u003Ede d\u0026eacute;veloppement, tu participeras \u0026agrave; des projets applicatifs concrets, avec de r\u0026eacute;elles responsabilit\u0026eacute;s techniques et un accompagnement structur\u0026eacute; tout au long de ton alternance.\u003C/p\u003E\n\u003Cp\u003E\u0026nbsp;\u003C/p\u003E\n\u003Cp\u003E\u003Cstrong\u003ETes missions principales :\u003C/strong\u003E\u003C/p\u003E\n\u003Cul type=\u0022disc\u0022\u003E\n\u003Cli class=\u0022MsoNormal\u0022\u003ELe d\u0026eacute;veloppement et l\u0026rsquo;\u0026eacute;volution d\u0026rsquo;applications en \u003Cstrong\u003E.NET / .NET Framework\u003C/strong\u003E\u003C/li\u003E\n\u003Cli class=\u0022MsoNormal\u0022\u003ELa conception et l\u0026rsquo;impl\u0026eacute;mentation de nouvelles fonctionnalit\u0026eacute;s\u003C/li\u003E\n\u003Cli class=\u0022MsoNormal\u0022\u003ELa maintenance corrective et \u0026eacute;volutive\u003C/li\u003E\n\u003Cli class=\u0022MsoNormal\u0022\u003ELa r\u0026eacute;solution de bugs et l\u0026rsquo;optimisation des performances\u003C/li\u003E\n\u003Cli class=\u0022MsoNormal\u0022\u003ELa participation aux revues de code et aux \u0026eacute;changes techniques\u003C/li\u003E\n\u003Cli class=\u0022MsoNormal\u0022\u003ELa r\u0026eacute;daction de code propre, lisible et maintenable\u003C/li\u003E\n\u003C/ul\u003E\n\u003Cp class=\u0022MsoNormal\u0022\u003E\u003Cstrong\u003EEnvironnement technique\u003C/strong\u003E\u003C/p\u003E\n\u003Cul type=\u0022disc\u0022\u003E\n\u003Cli class=\u0022MsoNormal\u0022\u003ELangage : \u003Cstrong\u003EC#\u003C/strong\u003E\u003C/li\u003E\n\u003Cli class=\u0022MsoNormal\u0022\u003EFrameworks : \u003Cstrong\u003E.NET / .NET Framework / ASP.NET / ASP.NET Core\u003C/strong\u003E\u003C/li\u003E\n\u003Cli class=\u0022MsoNormal\u0022\u003EFront-end : \u003Cstrong\u003EAngular\u003C/strong\u003E, HTML, CSS, JavaScript\u003C/li\u003E\n\u003Cli class=\u0022MsoNormal\u0022\u003EBases de donn\u0026eacute;es : \u003Cstrong\u003ESQL Server\u003C/strong\u003E, \u003Cstrong\u003EMongoDB\u003C/strong\u003E\u003C/li\u003E\n\u003Cli class=\u0022MsoNormal\u0022\u003EOutils \u0026amp; DevOps : \u003Cstrong\u003EGit, Visual Studio, Docker, CI/CD, Ansible\u003C/strong\u003E\u003C/li\u003E\n\u003C/ul\u003E", "employmentType" : "FULL_TIME" } Où nous trouver ? ITGA RENNES - Le siège Social Parc Édonia Bâtiment R Rue de la terre Adélie CS 66862 35768 Saint Grégoire cedex var markers = [{"title":"ITGA Rennes","lat":"48.1492881","lng":"-1.6978032","description":""}]; window.onload = function () { var mapOptions = { center: new google.maps.LatLng(markers[0].lat, markers[0].lng), zoom: 14, mapTypeId: google.maps.MapTypeId.ROADMAP }; var infoWindow = new google.maps.InfoWindow(); var map = new google.maps.Map(document.getElementById("dvMap"), mapOptions); for (i = 0; i Nos dernières offres Préparateur d'échantillons F/H CDI Temps plein Saint-Grégoire Je postule Job d'été - Technicien de laboratoire F/H CDD - 2 mois Temps plein Saint-Grégoire Je postule Chargé d'Admissions et Relations Entreprises F/H Up n'PRO CDI Temps plein Saint-Grégoire Je postule Technicien de Laboratoire F/H CDI Temps plein Metz Je postule Voir plus d'offres Offres Candidature spontanée Blog Engagement RSE Vie de l'entreprise Liens utiles Cookies Plan du site Connexion recruteurs Préférences des cookies Propulsé par Logiciel de gestion de candidature et de multidiffusion