Dank der großen Hilfe dieser Website und von SO konnte ich einen Prototyp einer Software erstellen, die ich verkaufen möchte, aber leider denke ich, dass meine Codequalität sehr niedrig ist, obwohl der Prototyp funktioniert. Ich habe nicht viel OOP oder Designmuster verwendet. Obwohl mein Code für mich verständlich ist, denke ich, dass ein normaler Entwickler in Ohnmacht fallen würde, wenn er ihn lesen müsste.
Deshalb wollte ich einen Entwickler einstellen, um die Qualität zu verbessern und einige meiner Implementierungen von APIs zu verbessern, die ich möglicherweise nicht richtig ausgeführt habe. Ich habe jedoch Probleme, einen Entwickler einzustellen.
Ich habe zwei Entwickler getroffen und sie meine Softwarespezifikationen lesen lassen. Das Problem ist, dass ihnen das Domänenwissen meines Unternehmens fehlte (was völlig verständlich und kein Problem ist), aber ihnen fehlte auch das Wissen über die zugrunde liegenden technischen Systeme, die ich verwendet habe, wie Hadoop, Hbase, Cuda, etc..Ich habe viel Zeit damit verbracht, Map / Reduce, Bigtables und andere Technologien zu erklären, die ich verwendet habe. Ich dachte, es sei allgemein bekannt, weil ich mit Leuten auf dieser Seite interagierte, aber die Leute, mit denen ich mich traf, erwähnten, dass sie sich nie mit diesen Dingen befassen mussten, also wussten sie es nicht.
Meine Frage ist, ob es für Softwareprojekte, die Entwickler von Auftragnehmern einstellen, eine Gefahr darstellt, wenn der Entwickler keine Erfahrung mit den zugrunde liegenden Technologien hat. oder kann ein allgemeiner Entwickler, der in einem anderen Bereich erfolgreich ist, neue Technologien realistisch aufgreifen? Ich habe die Umschlagberechnung sehr schnell durchgeführt und denke, dass die Vorabkosten ähnlich wären, wenn ich einen Studenten oder Entwickler ohne Erfahrung in meinen Technologien einstellen würde, der viele Stunden arbeiten wird, anstatt einen erfahrenen Entwickler einzustellen, der das Doppelte berechnet, aber die Hälfte erreicht die Zeit, aber über welche anderen Risiken sollte ich nachdenken oder mir Sorgen machen? Sollte ich einen Generalisten einstellen, sollte ich auch für die Zeit bezahlen, die sie benötigen, um Hadoop oder Cuda zu lernen, wenn sie Auftragnehmer sind (scheint geschäftlich sinnvoll zu sein, ist sich aber nicht sicher, wie fair es für sie ist, wenn sie das nicht verwenden Fähigkeit wieder).
Ich bin ein bisschen verwirrt, daher wären alle Vorschläge großartig.
I think a normal developer would faint if they had to read it
- Das ist etwas Ehrlichkeit genau dort.