Was sind Ihre Verpflichtungen, wenn Sie stundenweise oder pro Projekt aufladen?
Im Wesentlichen das gleiche. Sei professionell.
Wenn Sie sich bereit erklären, ein Projekt zu übernehmen, geben Sie eine grobe Schätzung an, dass die Bearbeitung 10 Tage dauern kann, und berechnen Sie £ X pro Stunde. Sind Sie verpflichtet, nach Ablauf dieser 10 Tage kostenlos zu arbeiten, und Sie haben es noch nicht geschafft? um Ihr Projekt aufgrund unerwarteter Probleme abzuschließen?
Nein - solange es ungefähr 10 Tage sind, geht es dir gut. Ich würde ungefähr 10 Tage als irgendwo zwischen 50 - 120 Stunden an den äußersten Rändern definieren. Alles über 120 Stunden (ein 50% iger Überlauf) ist so gut wie blass.
Obwohl "unerwartete Probleme" viel Unbestimmtheit hinterlassen. Erfahrene Fachleute erwarten viel mehr Probleme als neue Entwickler. Wenn der Kunde jedoch weiß, dass Sie ein neuer Entwickler sind (und wissen, dass er dadurch einen erheblichen Rabatt erhält), gibt es hier etwas Spielraum.
Was ist, wenn Sie das Projekt geliefert haben, aber Fehler gefunden wurden? Sollten Sie diese Fehler kostenlos beheben, wenn die 10 Tage abgelaufen sind, oder sollten Sie Ihrem Kunden eine Gebühr berechnen?
Bugs? Ja - Sie sollten diese kostenlos reparieren. Sie werden 10 Tage lang nicht dafür bezahlt, fehlerhaften Code zu erstellen.
Auch hier ist "Bug" etwas vage. Es gibt Show-Stopper-Fehler (z. B. Programm läuft nicht - offensichtlich Ihre Schuld) und Edge-Case-Fehler (Programm schneidet Text unter türkisch lokalisierten Windows mit aktiviertem chinesischem IME ab - nicht wirklich vernünftig). Die meisten fallen irgendwo in die Mitte, aber die Beweislast liegt bei Ihnen.
Es gibt auch Spezifikationsfehler - diese sind die schwierigsten. Sie müssen sich ein Urteil darüber bilden, ob Sie die Änderung der Spezifikation vernünftigerweise antizipieren, in Frage stellen oder implizieren sollten. Wieder würde ich Ihnen die Beweislast auferlegen.
Für ein 10-tägiges (80-stündiges) Projekt mit einem umweltfreundlichen Entwickler wären weitere 10 bis 15 Stunden Bugfixes nicht zu viel verlangt. Alles darüber hinaus würde ich versuchen, die Zahlung zu berechnen - obwohl ich wahrscheinlich weitere 5 bis 10 Stunden kostenlos machen würde, bevor ich den Kunden entlasse.
Was sollte für das oben genannte Projekt das Ergebnis sein, wenn Sie mit dem Projekt beginnen, aber nach 10 Tagen müssen Sie aus irgendeinem Grund aufgeben und Ihrem Kunden mitteilen, dass Sie dies nicht mehr tun können? Mir ist klar, dass dies nichts dazu beiträgt, Ihren Ruf und Ihre Beziehung zum Kunden zu stärken. Sind Sie jedoch verpflichtet, das an Sie gezahlte Geld zurückzuzahlen, oder liefern Sie nur den halb / fast fertigen Quellcode und helfen ihm, jemanden zu finden, der ihn vervollständigt?
Du gibst das Geld zurück. Wenn Sie das Projekt nicht abschließen können, können Sie es wahrscheinlich nicht als halb abgeschlossen beurteilen. Wenn der Kunde Sie eingestellt hat, ist es noch wahrscheinlicher , dass er nicht beurteilen kann, ob er zur Hälfte fertig ist. Wenn Sie jemanden finden, der es beendet, können Sie einen Unterauftrag an ihn vergeben - der Unterschied zwischen dem, was er Ihnen berechnet und dem, was Sie bereits gemacht haben, ist Ihr Gewinn (oder Verlust).
Am Ende ist es oft besser, sich dem Kunden zu beugen und ihn als Lektion zu kalkulieren. Nach einer Weile können Sie die "Problem-Clients" erkennen und sie zu Beginn vermeiden (oder aufladen). Sie werden auch lernen, ein bisschen besser zu schätzen, Bugfix-Kosten in Ihre Preisgestaltung einzubeziehen usw.
Als studentischer Entwickler haben Sie einen gewissen Spielraum. Es ist wahrscheinlich, dass Sie niemand wegen des Betrags verklagt, den Sie für ein 10-Tage-Projekt berechnet haben. Sie werden nie wieder ein Geschäft von diesem Kunden (oder seinen Freunden) bekommen - aber da sie einen studentischen Entwickler eingestellt haben, wollen sie wahrscheinlich nur billige Arbeitskräfte und verstehen nicht, was es tatsächlich kostet, einen guten Entwickler einzustellen. Sie verlieren in Zukunft nicht viel außer Kopfschmerzen - allerdings auf Kosten eines guten Gewissens.
Mein Rat? Beenden Sie es einfach - Sie werden sich besser fühlen, der Kunde wird sich besser fühlen und Sie werden ein besserer Entwickler und Geschäftsmann dafür sein. Es ist nicht so, als wäre es ein Jahr Arbeit wert - und Sie haben alle Ihre Freunde bei Stackoverflow und Stackexchange, die Ihnen helfen. ;)