Zum Hauptinhalt springen

Softwareentwickler (m/w/d)

Softwareentwickler (m/w/d)

Über Heinrich Schmid

Über 7.000 Menschen an mehr als 200 Standorten setzen sich jeden Tag bei der familiengeführten Unternehmensgruppe Heinrich Schmid dafür ein, dass Handwerk Zukunft hat. Mit einer großen Anzahl an verschiedenen Gewerken möchten wir unseren Kunden nicht nur höchste handwerkliche Qualität, sondern auch mehr Vielfalt aus einer Hand bieten. Wir sind Handwerker aus Leidenschaft mit dem Blick fürs Wesentliche: den Menschen. Unsere Mitarbeiter sind vor Ort und zeigen täglich, was es heißt ein Heinrich Schmid zu sein: Handwerker, Teamplayer, Unternehmer, Mensch.

Deine Aufgaben

  • Inhouse Entwicklung nutzerzentrierter Web-Anwendungen
  • Unterstützung bei Konzeption und Entwicklung von Software-Architektur, die funktionelle-, technische- und Nutzeranforderungen erfüllt
  • Evaluation externer Softwareentwicklung inkl. Code Reviews
  • Teamübergreifende Zusammenarbeit zur Definition von Schnittstellen und der produktübergreifenden Systemlandschaft
  • Enge Zusammenarbeit mit Product Ownern und UX/UI Designern bei der Entwicklung der Produktvision

Deine Qualifikation

  • Abgeschlossenes Studium im Bereich Informatik, Softwareengineering oder ähnliches
  • Erfahrung mit unserem Tech-Stack: React, NestJS, TypeScript, JavaScript, Apollo GraphQL, Jest, Azure, Kubernetes, ArgoCD, MongoDB
  • Versiert in modernen Softwareentwicklungsmethoden wie Clean Code, BDD, TDD, OOP, FP, Trunk-Based-Development
  • Verständnis für Architekturprinzipien wie Microservices oder Serverless
  • Erfahrung mit agilen Methoden (z.B. Scrum, Kanban)

Unser Angebot

  • Professionelle Einarbeitung und begleiteter Onboarding-Prozess
  • Arbeitsplatz in Reutlingen und mobiles Arbeiten
  • JobRad und Corporate Benefits
  • Kostenlose Getränke
  • Firmenevents und Teambildungsmaßnahmen

Fühlst Du dich von der geschilderten Herausforderung und den umfangreichen Gestaltungs- und Entfaltungsmöglichkeiten angesprochen? Dann freuen wir uns sehr auf Deine Bewerbung vorzugsweise per E-Mail mit Angabe Deiner Gehaltsvorstellung und möglichem Eintrittstermin!

Bewirb dich jetzt

Standort auswählen *
Standort auswählen * Reutlingen
Anrede * Herr Frau Divers
Dokumente hochladen *

Deine Uploads:

Hinweis: maximal 12 MB
Ich habe die Datenschutzbestimmungen gelesen und bin damit einverstanden.
'); jQuery('#contact-form').appendTo('.jobs-page > .gridSection > .container'); jQuery('.jobs-page > .gridSection > .container > .cGridCol').addClass('row jobs-content').append('
'); jQuery('.jobs-page > .gridSection > .container > .cGridCol > .iWrap').addClass('jobs-inner-content col-xl-8 col-lg-8 col-md-8 col-sm-12 col-xs-12'); var button_text = ''; var button_title = ''; var ap_box = ''; if (jQuery('select[name=location] option').length-1 Initiativ bewerben button_text = button_title = "Initiativ bewerben"; jQuery('.application-form .location').addClass('scroll-to-form'); jQuery('.btn-jobs').addClass('scroll-to-form'); getApToLocation("","",1); } else if(jQuery('select[name=location] option').length-1 == 1) { // genau ein Standort vorhanden -> diesen schon vorauswählen let location_text = jQuery('select[name=location] option:not(:selected)').prop('selected',true).text(); button_text = 'Bewerben in '+location_text+''; button_title = "Bewerben in "+location_text; jQuery('.application-form .location').addClass('scroll-to-form').removeClass('change-location'); jQuery('.application-form .location strong').html('Bewerben in '+location_text); jQuery('.btn-jobs').addClass('icon-location scroll-to-form'); getApToLocation(jQuery('select[name=location] option:selected').val(),location_text,2); } else { // mehrere Standorte vorhanden -> auswahl anbieten let location_text = 'Bitte wählen'; jQuery('.btn-jobs').addClass('change-location'); if(!$('body').hasClass('page-type-123')){ jQuery('.application-form .location').append('
Standort auswählen
'); } else { jQuery('.application-form .location').append('
Bearbeiten
'); } button_text = 'Verfügbar an '+(jQuery('select[name=location] option').length-1)+' Standorten'; button_title = 'Verfügbar an '+(jQuery('select[name=location] option').length-1)+' Standorten'; if (window.innerWidth0) { button_text = button_title = "Initiativ bewerben"; jQuery('.application-form .location').addClass('scroll-to-form'); jQuery('.btn-jobs').removeClass('change-location').addClass('scroll-to-form'); getApToLocation("","",1); } else { ap_box = '

Bewerben in

'+location_text+'

['+(jQuery('select[name=location] option').length-1)+' Standorte]( "Bitte wählen")
'; jQuery('.jobs-contact-inner-content').append(ap_box); } jQuery(document).on('click', '.change-location', function(e) { e.preventDefault(); if(!$('body').hasClass('page-type-123')){ $('#dynamicOffCanvas .dynamicOffCanvas-content-outer').remove(); $('#dynamicOffCanvas .dynamicOffCanvas-form').remove(); } jQuery('#flyout-overlay').addClass('active-dynamic-fly'); jQuery('#dynamicOffCanvas .frame header .head-2').text('Bitte wählen'); if ($('#dynamicOffCanvas .frame header #backDynamicOffCanvas').length === 0 && !$('body').hasClass('page-type-123')) { jQuery('#dynamicOffCanvas .frame header').prepend(''); } jQuery('#dynamicOffCanvas .frame').append('
'+(jQuery('select[name=location] option').length-1)+'
Standorte
'); jQuery('.application-form .location select option').each(function(){ if (jQuery(this).val()!='') { jQuery('#dynamicOffCanvas .frame .dynamicOffCanvas-content-outer').append('

  • '+jQuery(this).data('location-name')+'
  • '+jQuery(this).data('business-unit')+'
  • '+jQuery(this).data('street-no')+', '+jQuery(this).data('zip-city')+'

'); } }); jQuery('#dynamicOffCanvas').addClass('flyout-get-ready'); jQuery('#flyout-overlay').addClass('active-fly'); jQuery('body').addClass('flyout-active-no-scroll'); }); jQuery(document).on('input', '#dynamicOffCanvas .dynamicOffCanvas-form .form-control', function() { if (jQuery(this).val().length>0) { jQuery(this).parent().addClass('active'); } else { jQuery(this).parent().removeClass('active'); } let suchbegriff = jQuery('#dynamicOffCanvas .dynamicOffCanvas-form .form-control').val().toLowerCase();; jQuery('#dynamicOffCanvas .dynamicOffCanvas-content').each(function(){ if (jQuery(this).attr('title').toLowerCase().indexOf(suchbegriff)>=0) { jQuery(this).removeClass('hide'); } else { jQuery(this).addClass('hide'); } }); jQuery('.standort-name .counter').text(jQuery('.dynamicOffCanvas-content-outer .dynamicOffCanvas-content:not(.hide)').length); jQuery('.standort-name .counter-text-standort').text((jQuery('.dynamicOffCanvas-content-outer .dynamicOffCanvas-content:not(.hide)').length==1 ? 'Standort' : 'Standorte')); jQuery('.standort-name .counter-text-job').text((jQuery('.dynamicOffCanvas-content-outer .dynamicOffCanvas-content:not(.hide)').length==1 ? 'Stellenangebot' : 'Stellenangebote')); }); var jobLocId; jQuery(document).on('click', '#dynamicOffCanvas .dynamicOffCanvas-content.location', function(){ jQuery('.btn-jobs').removeClass('change-location'); getApToLocation(jQuery(this).data('location'),"",3); $('.individual-flyout-content .application-form .location p').text('Bearbeiten') jQuery('#flyout-overlay').removeClass('active-dynamic-fly'); jQuery('#dynamicOffCanvas #closeDynamicOffCanvas').trigger('click'); viewfunction(); if(!$('body').hasClass('page-type-123')){ jobLocId = jQuery(this).data('locid'); if (!jQuery('.application-form-outer .matching-jobs').hasClass('active')) { jQuery('.application-form-outer .matching-jobs').addClass('active'); jQuery('.application-form-outer .matching-jobs').append('
Bewerben als *
'); } else { $( '.application-form .matching-jobs.active .choose-job' ).remove(); $('.application-form .matching-jobs .job-overlay').addClass('loading'); jQuery('.application-form .matching-jobs.active').removeClass('selected'); $('.application-form .matching-jobs.active').append('
'); $('.application-form-outer .matching-jobs .job-overlay strong').text('Bewerben als *'); } setTimeout(function() { getJobsByLocation(jobLocId); }, 500); } }); if(!$('body').hasClass('page-type-123')){ jQuery(document).on('click', '#dynamicOffCanvas .dynamicOffCanvas-content.job', function(){ jQuery('.application-form .matching-jobs.active strong').text($(this).attr('title')); jQuery('.job-name').val($(this).data('jobid')); jQuery('.application-form .matching-jobs.active').addClass('selected'); $('.application-form .matching-jobs.active .choose-job').text('Bearbeiten'); checkInitiativ() jQuery('#flyout-overlay').removeClass('active-dynamic-fly'); jQuery('#dynamicOffCanvas #closeDynamicOffCanvas').trigger('click'); viewfunction(); }); jQuery(document).on('click', '#dynamicOffCanvas .dynamicOffCanvas-form .standort-name .initiativ', function(){ jQuery('.application-form .matching-jobs.active strong').text($(this).text()); jQuery('.job-name').val($(this).text()); $('.application-form .matching-jobs.active .choose-job').text('Bearbeiten'); checkInitiativ() jQuery('#flyout-overlay').removeClass('active-dynamic-fly'); jQuery('#dynamicOffCanvas #closeDynamicOffCanvas').trigger('click'); viewfunction(); }); jQuery(document).on('click', '.application-form-outer .matching-jobs.active', function (){ if($('#dynamicOffCanvas .dynamicOffCanvas-content-outer').length =0 ? lt.indexOf(',') : lt.length))); jQuery('.location-name').val(lt.slice(0,(lt.indexOf(',')>=0 ? lt.indexOf(',') : lt.length))); jQuery('.change-location-off').removeClass('change-location-off'); } } /*if ($('.application-form-outer .application-form .location select').hasClass('initiativ')) { var selectedOptionText = jQuery('select[name=location] option:selected').text(); jQuery('.application-form .location strong').html(selectedOptionText); jQuery('.location-name').val(selectedOptionText); jQuery('.change-location-off').removeClass('change-location-off'); }*/ function getJobsByLocation(location) { $.ajax({ url: jQuery('.application-form .matching-jobs').data('url'), data: { term : location}, cache: false, async: false, type: 'POST', success: function(result){ if (result.indexOf("") >= 0) { var jobs = jQuery.parseJSON(result.slice(result.indexOf("") + "".length, result.indexOf(""))); jQuery('#dynamicOffCanvas .frame header .head-2').text('Bitte wählen'); if ($('#dynamicOffCanvas .frame header #backDynamicOffCanvas').length === 0) { jQuery('#dynamicOffCanvas .frame header').prepend(''); } jQuery('#dynamicOffCanvas .frame').append('
'+(jQuery(jobs).length)+'
Stellenangebote
Initiativ
'); jQuery.each(jobs, function (index, item) { jQuery('#dynamicOffCanvas .frame .dynamicOffCanvas-content-outer').append('
'+jobs[index]['title']+'
'); }) $( '.application-form .matching-jobs.active .spinner' ).remove(); $('.application-form .matching-jobs .job-overlay').removeClass('loading'); if(jQuery(".individual-flyout").hasClass('initiativ')){ jQuery('.application-form .matching-jobs.active strong').text('Initiativ'); jQuery('.job-name').val('Initiativ'); jQuery('.application-form .matching-jobs.active').addClass('selected'); $('.application-form .matching-jobs.active').append('
Bearbeiten
'); checkInitiativ(); } else{ if(!$('.application-form .matching-jobs.active').hasClass('selected')){ $('.application-form .matching-jobs.active').append('
Job auswählen
'); } else { $('.application-form .matching-jobs.active').append('
Bearbeiten
'); } } } }, }); } function stepBackDynamicOffCanvas(){ jQuery('#flyout-overlay').removeClass('active-dynamic-fly'); jQuery('#dynamicOffCanvas #closeDynamicOffCanvas').trigger('click'); } //Fehler auf Job-pages iwo hier function changeAp(location_info, location_text, type) { if (type==1) { ap_box = '

Ansprechpartner

'+location_info['name']+'

'+location_info['company']+'

  • '+location_info['address']+'
  • Anrufen'+location_info['tel']+'
  • E-Mail schreiben'+location_info['mail']+'

Jetzt bewerben'+location_info['whatsapp']+'
'; jQuery('.jobs-contact-inner-content').append(ap_box); } if (type==2) { ap_box = '

Bewerben in

'+location_text+'

Ansprechpartner

'+location_info['name']+'

'+location_info['company']+'

  • '+location_info['address']+'
  • Anrufen'+location_info['tel']+'
  • E-Mail schreiben'+location_info['mail']+'

Jetzt bewerben'+location_info['whatsapp']+'
'; jQuery('.jobs-contact-inner-content').append(ap_box); jQuery('.location-name').val(location_text); } if (type==3 || type==4) { if (location_info['location'] === undefined) location_info['location'] = jQuery('select[name=location] option[value="'+location_info['request']+'"]').text() jQuery('.swiper-content .btn-jobs').addClass('icon-location scroll-to-form').attr('title','Bewerben in '+location_info['location']).html('Bewerben in '+location_info['location']+''); // jQuery('.application-form .location').removeClass('change-location').addClass('scroll-to-form'); jQuery('.change-location-off').removeClass('change-location-off'); lt = jQuery('select[name=location] option[value="'+location_info['request']+'"]').prop('selected',true).change().text(); jQuery('.application-form .location strong').html('Bewerben in '+lt.slice(0,(lt.indexOf(',')>=0 ? lt.indexOf(',') : lt.length))); jQuery('.location-name').val(location_info['location']); if (jQuery('#recruiter').hasClass('sticky')) { div_img = div_ap = 'col-xl-12 col-lg-12 col-md-12 col-sm-12 col-xs-12'; } else { div_img = 'col-xl-4 col-lg-4 col-md-4 col-sm-4 col-xs-12'; div_ap = 'col-xl-8 col-lg-8 col-md-8 col-sm-8 col-xs-12'; } jQuery('#recruiter').html(''); ap_box = '

Bewerben in

'+location_info['location']+'

Ansprechpartner

'+location_info['name']+'

'+location_info['company']+'

  • '+location_info['address']+'
  • Anrufen'+location_info['tel']+'
  • E-Mail schreiben'+location_info['mail']+'

Jetzt bewerben'+location_info['whatsapp']+'
'; jQuery('#recruiter').append(ap_box); if(location_info['whatsapp'] !== '') { $('.introSlide a.btn.contact-whatsapp').removeClass('hide'); } else { $('.introSlide a.btn.contact-whatsapp').addClass('hide'); } } } } else { let location_text = jQuery('select[name=location] option').text(); jQuery('.swiper-content .btn-jobs').addClass('icon-location scroll-to-form').attr('title',"Bewerben in "+location_text).html('Bewerben in '+location_text+''); jQuery('.application-form .location').addClass('scroll-to-form'); jQuery('.application-form .location strong').html('Bewerben in '+location_text); jQuery('.location-name').val(location_text); } jQuery('.page-url').val(window.location.href); jQuery('.application-form .upload .upload-overlay, .application-form .upload .icon-upload').click(function(){ if (!jQuery(this).parent().hasClass('is-disabled') && !jQuery(this).parent().parent().hasClass('is-disabled')) { jQuery(this).siblings('.upload-files').trigger('click'); } }); var files_array = []; var filesize_allowed = 12582912; // maximal 12 MB (https://www.gbmb.org/mb-to-bytes) jQuery('.application-form .upload-files').on('change',function(){ jQuery('.application-form .upload').addClass('is-disabled'); jQuery('.application-form .upload-overlay strong').text('Daten werden hochgeladen'); jQuery('.application-form .upload-overlay .icon-upload').hide().after('

  • ⚠ Nicht mehr als 12 MB insgesamt ('+fileSize(filesize_this)+') '+file.name+'
  • ⚠ Dateityp nicht erlaubt ('+fileSize(filesize_this)+') '+file.name+'
  • ⚠ Bereits vorhanden ('+fileSize(filesize_this)+') '+file.name+'
  • ⚠ Nicht mehr als 5 Dateien ('+fileSize(filesize_this)+') '+file.name+'
  • ('+fileSize(filesize_this)+') '+file.name+'

Dies ist eine auf dritten Jobbörsen gefundene Stellenanzeige. Wir bieten hierfür keinen Support, können diese aber jederzeit offline stellen. Für weitere Informationen: Datenschutzhinweise | Anzeige melden.

Ähnliche Stellenanzeigen

Softwareentwickler (m/w/d)

Heinrich Schmid Systemhaus GmbH & Co. KG
Reutlingen
Vollzeit, Unbefristet

Veröffentlicht am 29.09.2024

Jetzt Job teilen