U zoekt een freelance of interim Python programmeur om te ontwikkelen aan uw software project in 2024.
Python is een van de meest populaire programmeertalen van het moment. De laatste Python versie is 3.13.0 en werd gepubliceerd op 7 oktober 2024.
De programeertaal Python is begin jaren 90 ontworpen door de Nederlander Guido van Rossem, met als doel een eenvoudig leesbare, maar krachtige en breed toepasbare taal te hebben die voor iedereen beschikbaar zou zijn. De ontiwkkeling van de taal stond tot en met 2018 onder leiding van Guido.
Voor de naam van zijn programmeertaal wilde de ontwerper, Guido van Rossem, een naam die kort en mysterieus was. Uiteindelijk haalde hij de naam uit zijn favoriete televisieserie Monty Python's Flying Circus. Luister naar een stukje van Monty Python's theme song.
Python staat bekend om de codeleesbaarheid, ontwikkelsnelheid en het instapgemak. De Python programmeertaal staat zowel functioneel als objectgeoriënteerd programmeren toe. De taal heeft een dynamisch typesysteem en wordt uitgevoerd door een interpreter.
Bekende easter eggs in de Python programmeertaal zijn de Zen of Python (import this
), de Hello World (import __hello__
) en antigravity (import antigravity
). Probeer ze uit.
De bekendste implementatie voor Python is CPython. Dit verwijst naar de C-code implementatie. Er zijn echter ook andere implementaties, zoals in Java (Jython) en .NET (IronPython).
Of het nu gaat om het ontwikkelen van bedrijfskritische software, om AI, machine learning, een API-koppeling of om een simpele website, een Python developer kan erbij helpen. Belangrijk is dat een Python developer specialistische kennis van Python heeft, gemakkelijk en in het Nederlands communiceert, en ervaren in het werken met teams. Van een Python developer verwacht men dat hij of zij kennis deelt met uw organisatie en op eigen initiatief advies uitbrengt.
Een freelance of zzp Python ontwikkelaar is een zelfstandig programmeur die gespecialiseerd in het programmeren in de programmeertaal Python. Het is iemand die veel systemen heeft gebouwd met behulp van deze programmeertaal. Wanneer u slechts één freelance Python programmeur inhuurt, voert hij of zij ook projectmanagementtaken uit.
Het begrip freelance of zzp betekent dat de Python developer zelfstandig onderneemt en niet bij u in dienst is. Daardoor betaalt u geen loonbelastingen, vakantiegeld, premies volksverzekering (AOW, Anw, Wlz), premie werknemersverzekering of bijdrage Zorgverzekeringswet.
Ondernemers kiezen om verschillende redenen voor het inhuren van een Python developer. Bijvoorbeeld, omdat:
De tarieven van developers van verschillende programmeertalen ontlopen elkaar niet zoveel. De gemiddelde uurprijs voor het inhuren van een ervaren Python programmeur ligt tussen de €100 en €125 in Nederland. Voor een beginnende Python ontwikkelaar ligt de prijs wat lager. Bekijk onze tarieven voor het inhuren van een ervaren Python developer.
Die uurtarieven van Python developers die u vindt op internet zijn meestal exclusief BTW. Zo ook de uurtarieven op deze pagina.
De behoefte aan Python ervaring is afhankelijk van de opdracht die u uit wilt laten voeren. Voor het maken van scripts om simpele taken te automatiseren is een junior Python developer geschikt. Voor het bouwen van complexe bedrijfskritische systemen is een senior Python developer een must.
Python is een generieke programeertaal en toepasbaar voor vrijwel alle applicaties. Daarom kunt u een Python developer inhuren voor het maken van uiteenlopende applicaties en scripts.
Zo kunnen Python ontikkelaars ingehuurd worden voor het bouwen van koppelingen tussen systemen of websites (API's), bijvoorbeeld voor het automatisch uitwisselen van gebruikersgegevens in een loginsysteem, van productdata tussen marktplaatsen, van prijs- en orderdata in een aandelen- of cryptoprogramma, maar ook voor het bouwen van klantregistratiesystemen (CRM), web scrapers, of voor het bouwen van nieuwe content management systemen (CMS) en voor het opzetten van grafische gebruikersomgevingen (GUI's). Verder wordt Python wel gebruikt voor het uitvoeren van data-analyses en het ontwikkelen van machine learning modellen (kunstmatige intelligentie). Python kan zelfs gebruikt worden om games te ontwikkelen.
De duur van een Python opdracht is vaak tussen één dag (8 uren) en 3 maanden (500 uren). Voor een klein klusje of het oplossen van een bug, kan de opdracht een kwestie van een paar uur zijn. Wanneer u een specialist nodig heeft voor het opzetten van een complex systeem, dan zal de opdracht een maand of meer in beslag nemen.
Daarnaast geldt voor de meeste software dat er regelmatig updates nodig zijn. Daardoor kan het nodig zijn om gedurende meerdere jaren een Python programmeer van tijd tot tijd in te huren.
Een Python developer is vaak HBO-geschoold. Maar er zijn ook Python programmeurs die een MBO- of WO- (universiteit-) opleiding hebben genoten.
Python en Javascript zijn twee totaal verschillende programmeertalen. Beide worden veel gebruikt. Python is een populaire keuze voor het bouwen van backends. De bekende besturingsystemen Windows, MacOS en Linux ondersteunen Python. Javascript is een populaire keuze voor het bouwen van frontends, omdat webbrowsers programma's in deze taal kunnen uitvoeren.
Deze developers programmeren in erg verschillende programmeertalen. Uiteindelijk kan men met de meeste programmeertalen hetzelfde product maken. De keuze voor Python kan voordelig zijn vanwege de snelheid waarmee ontwikkeld kan worden en het aantal onderdelen dat door andere Python developers beschikbaar is gesteld en kan worden gebruikt voor uw project. Bedrijven als Google, Instagram, Spotify en Amazon programmeren in Python.
Een Python developer werkt een groot deel van de tijd op een laptop vanuit een codebewerkingsprogramma. Hier is een voorbeeld:
Hier nog een voorbeeld van een script dat een Python programmeur heeft geschreven:
''' Outline of a script that takes a screenshot of a webpage and sends it to a Telegram group. Example: python app.py https://www.google.com ''' from urllib.parse import quote_plus import io import re import sys from PIL import Image import requests try: from settings import TELEGRAM_BOT, TELEGRAM_CHAT_ID except ModuleNotFoundError: sys.stdout.write( 'Create a file called settings.py and save these settings' 'in it:\r\n\r\nTELEGRAM_BOT=...\r\nTELEGRAM_CHAT_ID=...\r\n' '\r\nThen run the script again.' ) sys.exit(1) RED = "\033[1;31m" RESET = "\033[0;0m" TELEGRAM_MESSAGE = 'Hello Telegram, look at this screenshot of %s.' def print_error_message(error_message): sys.stdout.write(f'{RED}{error_message}{RESET}\r\n') def send_telegram_message(text): api_url = f'https://api.telegram.org/bot{TELEGRAM_BOT}/sendMessage?' \ f'chat_id={TELEGRAM_CHAT_ID}&text=' + quote_plus(text, safe='') try: result = requests.get(api_url, timeout=1) if not result.status_code == 200: raise Exception(f'{result.status_code} {result.text}') return True except Exception as e: print_error_message(f'Failed to send Telegram message: {str(e)}') def send_image_to_telegram(image_bytes): api_url = f'https://api.telegram.org/bot{TELEGRAM_BOT}/sendPhoto?chat_id=' + \ str(TELEGRAM_CHAT_ID) try: result = requests.post(api_url, files={ 'photo': image_bytes }, timeout=10) if not result.status_code == 200: raise Exception(f'{result.status_code} {result.text}') file_id = result.json()['result']['photo'][0]['file_id'] return file_id except Exception as e: print_error_message(f'Failed to upload image to Telegram: {str(e)}') def take_screenshot(url): # TODO: Render url in headless browser and take screenshot # Fake placeholder image for now img = Image.new(mode = "RGB", size = (100, 100), color = (209, 123, 193)) img_bytes = io.BytesIO() img.save(img_bytes, format='png') return img_bytes.getvalue() def parse_arguments(): if len(sys.argv) == 2: url = sys.argv[1] if re.match(r'^https?:\/\/', url): return url print_error_message('Please provide a full URL, like https://www.google.com.') sys.exit(1) print_error_message('Please provide the website URL when invoking the script, ' f'.e.g.: `python app.py https://www.mywebsite.com`') sys.exit(1) def main(): # Get URL inputed by user on invoking the script url = parse_arguments() # Take screenshot screenshot = take_screenshot(url) # Send screenshot to Telegram send_image_to_telegram(screenshot) # Send text message to Telegram group if send_telegram_message(TELEGRAM_MESSAGE % url): sys.stdout.write('OK\r\n') if __name__ == '__main__': main()
Vaak is het eindproduct van een Python developer een grote hoeveelheid bestanden, meestal in een versiebeheersysteem, en de configuratie of installatie van servers (computers) en/of third party diensten die op basis van de bestanden taken uitvoeren.
Python developers zijn van alle leeftijden. Leeftijd is minder belangrijk dan ervaring met het programmeren in Python en het bouwen van software.
Een freelance Python developer heeft ten minste 3 jaren programmeerervaring. Die jaren zijn nodig om zelfstandig te kunnen werken.
Python developers hebben ten minste uitstekende kennis van de Python syntax, een basiskennis van de interne werking van de programmeertaal en van codeoptimalisaties. Daarnaast hebben zij ervaring in het bouwen van systemen in Python, met behulp van Python frameworks en codepakketten van derden. Denk daarbij aan web frameworks als Django en Flask, en aan data-analysepakketen als numpy en scikit-learn.
Onder algemene development vaardigheden van de Python programmeur vallen o.a versiebeheer, workflows beheren, deployment, afstemmen met co-developers, pair promgramming, het inschatten van projecten, en op agile wijze ontwikkelen.
Ja, een ervaren Python programmeur met voldoende kennis van beheer van systemen kan een Python applicatie maken en die vervolgens publiceren als website of webapplicatie, of beschikbaar maken als programma op uw computer.
Python developers kunnen werken met verschillende versies van Python. Zij kunnen software in oudere versies (Python 2.X.X) begrijpen en werken met nieuwere versies (Python 3.X.X). Python versienummers zijn als volgt opgebouwd: major.minor.micro. Python 2.7.X versies hebben bug fixes en security updates tot 1 januari 2020 ontvangen.
Python developers zijn in het algemeen flexibel. Dat wil zeggen dat zij zowel remote kunnen werken als op locatie.
Remote, op afstand, kan betekenen op een flexwerkplek, thuis of op een eigen kantoor. Op locatie betekent meestal op het kantoor van uw development team of elders in uw bedrijf
Twee belangrijke factoren in het bepalen van de werklocatie zijn veiligheid en privacy. Er moet bijvoorbeeld een afweging gemaakt worden of communicatie met bedrijfskritische applicaties binnen uw testomgevingen veilig genoeg kan vanaf een externe locatie. Ook kan uw privacybeleid eisen dat er alleen op locatie met persoonsgegevens gewerkt wordt.
Als u een zelfstandige Python developer inhuurt en niet een intermediair of bemiddelaar, dan rekent de Python developer geen wervingskosten, administratiekosten of contractkosten.
Doorgaans factureert een zelfstandige Python programeur u per uur, per project of per projectdeel.
Als opdrachtgever en bedenker van de ontwikkelopdracht wilt u de volledige rechten over de gemaakte Python code hebben. U wilt het intellectueel eigendomsrecht hebben. Daarnaast wilt u te allen tijde de vervaardigde code mogen inzien. Het is belangrijk dat u dit recht vastlegt in het contract overeenkomt met de Python developer.
De meeste Python ontwikkelaars hebben ervaring met gangbare hulpmiddelen. Dit is ook weer afhankelijk van de ervaring van de developer. Als u een remote Python developer inhuurt, bedenkt u dan alvast hoe uw hulpmiddelen op afstand ingezet kunnen worden en of er extra licenties nodig zijn. Gebruikt u eigen, op maat gemaakte hulpmiddelen die noodzakelijk zijn om te ontwikkelen, houdt u dan rekening met extra kosten voor de tijd die de Python ontwikkelaar nodig heeft om deze te leren gebruiken.
U huurt een Python developer in om te werken aan een opdracht binnen uw onderneming. Dit betekent dat u de controle hebt over de ureninzet van de Python ontwikkelaar. De Python ontwikkelaar adviseert u echter op eigen initiatief over beslissingen en bespreekt met u in hoeverre die in het kader van de resources, veiligheid en gebruikerservaring verantwoord zijn.
Voor stichtingen, non-profits, bijzondere goede doelen en startups is er een aangepaste afspraak mogelijk.
Voor commerciële webapplicaties en softwareprojecten is er een vast voordelig tarief.
Geen wervingskosten • geen opzegkosten • wachttijd: 0-5 werkdagen
Voor gemeenten, provincies en (semi-)publieke organisaties is er een aangepaste afspraak mogelijk.
Heb je een vraag over het inhuren van een Python developer? Bericht ons nu en we antwoorden zo snel mogelijk.
Tevens kun je ons bereiken op
+31 6 164 677 43
N.B., je gaat akkoord gaat met het privacy beleid wanneer je gegevens achterlaat.