wie lange dauert Deine Jobsuche als SW-Entwickler C/C++?



  • c++ progger schrieb:

    vor ein paar Tagen habe ich Buch "Erfolgreich Bewerben für Dummies" in einer Bibliothek entdeckt, aber hatte keine Lust darauf, es durchzulesen. Meiner Meinung nach sollte ich beim Vorstellungsgespräch am besten meine Stärke an fachliches Können und Wissen vorweisen, anstatt soziale Kompetenz zu protzen.

    Werbekosten würde ich sparen 😉 Heute bin ich wieder in der Bibliothek, und glücklicherweise steht das Buch "Erfolgreich Bewerben für Dummies" noch m Regal. Es habe ich bereits in die Hand genommen.

    Bezüglich C++ auffrischen. Hast du schon "Effektiv C++ programmieren" gelesen?

    Peinlich nein zu sagen. Ein paar Ausschnitte habe ich herausgegoogelt, und finde Vorschläge drin jedenfalls praxisnah und wertvoll.

    Fragen würde ich auf allgemeines Verständnis:
    * Was ist der Unterschied zwischen Stack und Heap? Wie sieht (ganz grob) so ein Prozess im Speicher aus?
    * Wie kann man Ressourcen "automatisch" am Blockende wieder freigeben? -> RAII
    * grober Überblick über STL, zumindest vector, string, list, map sollte man schon mal gehört haben
    * ausgedruckter Code mit ein paar offensichtlichen Schwachstellen: Speicherloch, Übergabe an Funktion per Kopie statt const &, Exception nicht angefangen, ... Um ein Gefühl dafür zu bekommen, wie derjenige mit einer konkreten Problemstellung umgeht

    Deine Liste ist genau was ich erwarte. bedanke mich ganz herzlich.
    Kannst Du Kommentare zu die folgenden Antworten geben?
    Zu Stack vs. Heap:
    Stack und Heap sind für Datenspeicher gedacht. Im Vergleich zu Stack ist Heap für s.g. dynamischer Speicher geeignet. Heap ändert sich durch new und delete. Andererseits kommt Stack durch push, pop, call, ret zum Einsatz.

    +-----------------+
    |lokale Variable  | <- ESP
    |...              |
    +-----------------+
    |                 | <- EBP
    +-----------------+
    |Rücksprungaddress|
    |Param            |
    |...              |
    +-----------------+
    |                 |
    |...              |
    +-----------------+ Bottom of Stack
    |Argumente        |
    |Umgebungsvariable|
    +-----------------+
    

    Stack befindet sich in Cache-RAMs, und folglich viel schnell als Heap.

    Zu stl:
    Bislang setze ich oft

    std::vector
    

    und

    std::list
    

    ein, und selten

    std::map
    

    . Von C++11 habe ich

    for(auto& it: vector), std::transform, lambda [&](){}
    

    usw. gelernt. Es gibt unheimlich neue Sache bsw.

    std::forward, Args ...
    

    mit "C++0x" 😮

    Zu "Kopie statt const &, Exception nicht angefangen":
    Eigentlich ist mir

    const &
    

    beliebt. Was kann es ein Problem sein? QT Anwendungen haben Schwerigkeit mit try-catch Blocks. Ist

    catch(...)
    

    nicht die silver bullet für manche "nicht angefangen"?



  • Du wirkst da jetzt nicht besonders kompetent. 😉



  • Gregor schrieb:

    Du wirkst da jetzt nicht besonders kompetent. 😉

    es ist völlig unstrittig, dass ich nicht expert mit C oder C++. Was mir derzeit besonders betroffen ist, wie und in welche Richtung meine Kenntnisse mit Programmierung in C oder C++ in kurzer Zeit vertieft werden kann.
    Nochmal die Fragen:
    1. Sind Fehler in meiner Abbildung von stack frame eingeschlichen?
    2. Übergabeart const Reference vs. Kopie:
    "Übergabe per Reference ist deutlich schneller als eine Kopie eines großen Objekts" Ist was Lächliches in meiner Beitrag unterlaufen?
    3. Habe ich welche Begriffe verwechselt?



  • factorypattern schrieb:

    Gregor schrieb:

    Du wirkst da jetzt nicht besonders kompetent. 😉

    Beispiel?

    factorypattern schrieb:

    Zu Stack vs. Heap:
    Stack und Heap sind für Datenspeicher gedacht. Im Vergleich zu Stack ist Heap für s.g. dynamischer Speicher geeignet. Heap ändert sich durch new und delete. Andererseits kommt Stack durch push, pop, call, ret zum Einsatz.

    Die Begriffe Stack und Heap sind von der Bedeutung her mehrfach belegt. Du vermischt hier unterschiedliche Bedeutungen. Beim einen redest Du über eine dynamische Datenstruktur, beim anderen über einen Bereich im Speicher. Zudem sagst Du nicht, was es ist, sondern "wie Du es in der Verwendung wahrnimmst"?

    Was Du insgesamt da oben gesagt hast sieht wie die ersten Sätze der erstbesten Suchergebnisse einer Internetsuche bezüglich der jeweiligen Themen aus.



  • Sorry, mittlerweile habe ich meinen letzten Beitrag angepasst 😉

    Gregor schrieb:

    Die Begriffe Stack und Heap sind von der Bedeutung her mehrfach belegt. Du vermischt hier unterschiedliche Bedeutungen. Beim einen redest Du über eine dynamische Datenstruktur, beim anderen über einen Bereich im Speicher. Zudem sagst Du nicht, was es ist, sondern "wie Du es in der Verwendung wahrnimmst"?

    Du hast recht. Wie zugegeben, bin ich nicht Informatiker, sonder Quersteiger aus Automatisierungstechnik. Ich sage einfach was gerade im Kopf ist aus.

    Was Du insgesamt da oben gesagt hast sieht wie die ersten Sätze der erstbesten Suchergebnisse einer Internetsuche bezüglich der jeweiligen Themen aus.

    Du hast völlig recht 😃 Aber die Frage: wer derzeit nicht googelt, um einen Überblick über ein Theman zu schaffen?

    Jedenfasll danke für Deine Kritik 👍



  • factorypattern schrieb:

    Was Du insgesamt da oben gesagt hast sieht wie die ersten Sätze der erstbesten Suchergebnisse einer Internetsuche bezüglich der jeweiligen Themen aus.

    Du hast völlig recht 😃 Aber die Frage: wer derzeit nicht googelt, um einen Überblick über ein Theman zu schaffen?

    Gregor schrieb:

    Xin schrieb:

    Für Fachwissen gibt es Bücher.

    Ich glaube es gibt erstaunlich wenig Leute die Fachbücher lesen.

    Sei einer der wenigen! 😉 Dann musst Du in Bewerbungsgesprächen nicht darauf hoffen, dass Dein Gegenüber wegen mangelnder eigener Fachkenntnis ausschließlich irgendwelche doofen Brainteaserfragen fragt.

    Nebenbei gesagt ist Google aus meiner Sicht absolut ungeeignet, um einen Überblick über ein Thema zu kriegen. Du musst ein Fachbuch lesen, um etwas zusammenhängendes zu haben. Mit Google, Wikipedia und so kommst Du nur an punktuelles Wissen heran. Du kannst dann keine Beziehungen zwischen den einzelnen Wissensfragmenten herstellen und Du weißt auch nicht, ob Dir etwas wichtiges fehlt. Du kannst Google und Wikipedia nutzen, um Dein Wissen aufzufrischen. Du musst also schon im Vorfeld wissen, nach was Du suchst und wie es mit anderen Dingen in Zusammenhang steht. Du kannst Dir ja mal überlegen, ob Du mit Google alleine durch Dein Studium gekommen wärst.



  • Ich weiß nicht, ob solche Fragen tatsächlich in Vorstellungsgesprächen kommen. Wenn derjenige Ahnung hat, wird er schon durch paar nebensächliche Fragen sehen, ob du irgendwie Ahnung von den Grundlagen hast oder nicht, ohne irgendwelche Details nachzufragen. Beim Vorstellungsgespräch fürs Vorpraktikum hat man mir Fragen über Algorithmen (Binärsuche, Hashes) und Designpatterns gestellt.

    Deine Antworten hören sich jetzt zumindest nicht sehr sattelfest an. Wobei ich mir nicht sicher bin, ob ich spontan auf alles saubere Antworten liefern könnte. Ich bin nicht der Theoretiker, der sofort auf alles eine formal korrekte Antwort parat hat.
    Den Stack hast du zu technisch beschrieben. Zum einen ist die Bedeutung wie Gregor geschrieben hat mehrfach belegt. Zum anderen interessiert normalerweise keinen so genau, wie der Stack genau aufgebaut ist, das ist nicht das entscheidende an der Frage Stack vs. Heap. Und deine Antwort ist plattformspezifisch. Allein schon ESP und EBP sind x86 Register, zieht bei ARM also z.B. überhaupt nicht. Grad wenn du dich mit Automatisierungstechnik auskennst, müsstest du eigentlich auch was anderes als x86 kennen.
    Dass du vector und list oft einsetzt und map nicht hört sich auch sehr seltsam an... Zum einen ist std::list in C++ mehr oder weniger verpönnt, die wird extrem selten eingesetzt. Und dass du std::map selten einsetzt, was soll man da jetzt reininterpretieren? Dass du bestimmte Gründe dafür hast und eine effizientere Datenstruktur einsetzt, oder dass deine Programme bisher so trivial waren, dass du das nicht gebraucht hast?
    "QT Anwendungen haben Schwerigkeit mit try-catch Blocks."
    Hä? Nee.
    catch(...) Silverbullet?

    Also ich seh dich jetzt zumindest schon mal nicht als einen erfahrenen C++ Entwickler an. Es kommt dann drauf an, für was für eine Stelle du dich bewirbst und was du eigentlich willst. Wenn du sagst, du hast drei Jahre C++ Erfahrung, würde ich etwas anderes erwarten. Wenn ich also einen Seniordeveloper suchen würde, der sofort in wichtige Projekte einsteigt, wärst du kein geeigneter Kandidat. Wenn ich einfach weitere Programmierer brauche und dich als Frischling für wenig Geld einstelle, wärs wahrscheinlich ok.



  • Mechanics schrieb:

    ... (Binärsuche, Hashes) und Designpatterns gestellt.

    Danke. Ich merke die drei Punkte vor.

    Deine Antworten hören sich jetzt zumindest nicht sehr sattelfest an.

    Schade, dass meine Antworten Dich nicht beeindruckt haben.

    Allein schon ESP und EBP sind x86 Register, zieht bei ARM also z.B. überhaupt nicht. Grad wenn du dich mit Automatisierungstechnik auskennst, müsstest du eigentlich auch was anderes als x86 kennen.

    Während meines Studium habe ich Grundlagen über Mikrocontroller MCS-83 oder 85 (an der Stelle ist leider mein Gedächtnis flüchtiger geworden.) gelernt. Ich habe aber nie Heap von Mikrocontroller gehört. Vielleicht schlief ich gerade ein, als der Professor Rede über Heap von Mikrocontroller hielt. :p

    Zum einen ist std::list in C++ mehr oder weniger verpönnt, die wird extrem selten eingesetzt.

    Was meinst Du mit mehr oder weniger verpönnt? Ein Beispiel?

    Und dass du std::map selten einsetzt, was soll man da jetzt reininterpretieren?

    An der Stelle bin ich einfach sprachlos. Was sollte ich sagen, wenn unser Code tatsächlich keine Spur von std::map hinterlassen hat.

    "QT Anwendungen haben Schwerigkeit mit try-catch Blocks."
    Hä? Nee.

    Bei mir ist es wirklich passiert, dass exception nicht durch catch Block angefangen, sondern durch override von QCoreApplication::notify(). Ich komme aus Mars 😕

    catch(...) Silverbullet?

    Habe ich so wie folgendes verstanden:

    try {
       // ...
    } catch (...) {
       // ...
    }
    

    ellipse für alle unspezifische. Komme ich wieder aus Mars 😕

    Also ich seh dich jetzt zumindest schon mal nicht als einen erfahrenen C++ Entwickler an. Es kommt dann drauf an, für was für eine Stelle du dich bewirbst und was du eigentlich willst. Wenn du sagst, du hast drei Jahre C++ Erfahrung, würde ich etwas anderes erwarten. Wenn ich also einen Seniordeveloper suchen würde, der sofort in wichtige Projekte einsteigt, wärst du kein geeigneter Kandidat. Wenn ich einfach weitere Programmierer brauche und dich als Frischling für wenig Geld einstelle, wärs wahrscheinlich ok.

    Ich gehe davon aus, dass Du den ganzen Thread nicht durchgelesen hast. Nochmal der Haken: Ich bewerbe mich nicht um Senior SW-Entwickler C oder C++. Ich bin bisher bei keinem Vorstellungsgespräch durchgefallen, weil noch kein Interview außer der bevorstehenden Test-Einladung stattgefunden hat.



  • Also bei der Frage zu Heap und Stack hätte ich mir eher eine Antwort der Form erwartet: http://www.geeksforgeeks.org/memory-layout-of-c-program/
    Also dass du sagst: "Heap und Stack sind zwei von mehreren Adressbereichen eines Prozesses (...)". Wie welches Byte nun zu interpretieren ist interessiert keinen, da man das nachschlagen kann und je nach Architektur anders ist. Auch das Argument von wegen Stack ist schneller als Heap leuchtet nicht ein. Mag sein dass die Hardware gewisse Teile des RAMs im Cache hat, in aller Regel sind aber sowohl Heap als auch Stack im RAM und somit gleich schnell.

    Es bringt doch nichts, wenn du dir jetzt Wissen zu irgendwelchen Schlagwörtern ("Hash", "Binärsuche") besorgst. Du musst schauen, Schritt für Schritt das große Ganze zu lernen.
    Im Bereich C++ Programmieren lies erst einmal "Effektiv C++ programmieren", und verschaffe dir einen Überblick über die STL. Dass du 3 Jahre C++ programmierst und std::map ein Fragezeichen für dich ist, deutet darauf hin, dass du nie wirklich C++ gelernt hast. Das ist jetzt keine Kritik, nur eine Feststellung.

    Sieh zu, dass du nicht nur das Werkzeug, also C++ lernst. Beschäftige dich auch mit anderen Themen der Informatik bzw. Computertechnik. Du kannst dich mit 3D Graphik, Netzwerktechnik, Algorithmen und vielen anderen Themen beschäftigen. So setzt du Schwerpunkte, von denen nicht jeder Ahnung hat. Vor allem sind das auch Dinge, die sich nicht so schnell ändern wie die verwendeten Frameworks, du profitierst also langfristig von dem Wissen.



  • factorypattern schrieb:

    Stack befindet sich in Cache-RAMs, und folglich viel schnell als Heap.

    Wenn mir jemand sowas erzählt, würde ich vermutlich mal genauer nachfragen was er damit meint.
    Klingt nämlich wie nachgeplappert aber nicht richtig verstanden.

    Und es ist mMn. in dieser Formulierung ... falsch.
    Caches cachen üblicherweise unabhängig davon ob ein Speicherbereich Stack oder Heap darstellt, oder sonstwie verwaltet wird. Ich kenne zumindest kein System mit speziellen "Cache-RAMs" für den Stack.

    Ich kenne allerdings zumindest zwei Effekte die Zugriffe auf den Stack "begünstigen":

    1. Der Stack steht üblicherweise im Cache, da er ein Bereich ist den sich alle aufgerufenen Funktionen eines Threads teilen und immer wieder verwenden. Wenn man dagegen Speicher vom Heap anfordert, dann kann man nicht unbedingt davon ausgehen dass der angeforderte Bereich bereits im Cache liegt.
    2. Moderne CPUs haben diverse Optimierungen für den Zugriff auf den Stack. Wobei dabei - wenn ich es richtig verstehe - hauptsächlich das Inkrementieren/Dekrementieren des Stack-Pointers beschleunigt wird, weil sich ein spezieller Addierer darum kümmert und auch keine eigenen µOps dafür erzeugt werden müssen. (Siehe z.B. http://www.agner.org/optimize/microarchitecture.pdf "7.7 Stack Engine")

    Wenn man die Adresse eines bestimmten RAM Bereichs in einem Register hält, und diesen RAM Bereich oft verwendet, dann wird der Zugriff darauf aber normalerweise gleich schnell sein wie der Zugriff auf den Stack.



  • c++ progger schrieb:

    AMag sein dass die Hardware gewisse Teile des RAMs im Cache hat, in aller Regel sind aber sowohl Heap als auch Stack im RAM und somit gleich schnell.

    You make my day.

    Dass du 3 Jahre C++ programmierst und std::map ein Fragezeichen für dich ist, deutet darauf hin, dass du nie wirklich C++ gelernt hast. Das ist jetzt keine Kritik, nur eine Feststellung.

    In meiner Anwendung ist bisher kein std::map zum Einsatz gekommen =/=> Ich habe keine Ahnung über std::map. Ich würde zudem darauf hinweisen, dass die Anwendung eine Zusammenarbeit unseres Teams ist. Warum meine Kollegen std::map auch nicht verwenden, liegt wahrscheinlich nicht unbedingt an einer Gruppe von C oder C++ Alphabeten.

    Sieh zu, dass du nicht nur das Werkzeug, also C++ lernst. Beschäftige dich auch mit anderen Themen der Informatik bzw. Computertechnik. Du kannst dich mit 3D Graphik, Netzwerktechnik, Algorithmen und vielen anderen Themen beschäftigen. So setzt du Schwerpunkte, von denen nicht jeder Ahnung hat. Vor allem sind das auch Dinge, die sich nicht so schnell ändern wie die verwendeten Frameworks, du profitierst also langfristig von dem Wissen.

    Bei meinem jetzigen Arbeitgeber ist tatsächlich so, dass SW-Enwickler nicht nur programmieren müssen, sondern auch sich mit den Application gut vertraut machen sollen. Leider kenne ich mich nicht mit der Branche des Interviewers aus. Momentan kann ich mich nur um Verbessern meiner Wissenslücke in C oder C++ Programmierung bemühen.



  • factorypattern schrieb:

    Während meines Studium habe ich Grundlagen über Mikrocontroller MCS-83 oder 85 (an der Stelle ist leider mein Gedächtnis flüchtiger geworden.) gelernt. Ich habe aber nie Heap von Mikrocontroller gehört. Vielleicht schlief ich gerade ein, als der Professor Rede über Heap von Mikrocontroller hielt. :p

    Heap ist ein allgemeiner Begriff, auch wieder mehrfach belegt. Aber wenn der Microcontroller RAM hat, kann man auch von einem Heap sprechen. Und sehr wahrscheinlich auch von einem Stack. Deswegen erwarte ich einfach, dass du abstrahieren kannst. ESP und EBP sind eben nicht die Kernelemente des Begriffs Stack.

    c++ progger schrieb:

    Auch das Argument von wegen Stack ist schneller als Heap leuchtet nicht ein.

    Die Erklärung dazu war auch etwas komisch und wahrscheinlich falsch (je nachdem, wie man sie interpretiert). Aber wenn man in C++ von Stack und Heap redet, dann ist der Stack normalerweise schon "schneller". Es geht eben darum, dynamische Speicherallokationen zu vermeiden. Speicher auf dem Stack zu reservieren ist billig, üblicherweise wird von einem Register ein Wert abgezogen und das wars. Speicher auf dem Heap mit new zu reservieren, bedeutet üblicherweise mehrere Funktionsaufrufe + Schleifen + 1-2 Locks -> sehr viel teurer.

    std::list wird selten benutzt, weil sie eben auch zu viele dynamische Speicherallokationen macht und das ist zu 99% kontraproduktiv. std::vector ist fast immer besser.

    Es mag Spezialfälle geben, bei denen man std::map überhaupt nicht braucht. Aber die Datenstruktur ist so geläufig, dass jeder mit etwas Erfahrung sie eigentlich ständig benutzt haben sollte.

    Wenn etwas nicht funktioniert, muss man genau verstehen, woran das liegt. Wenn eine Exception nicht durch den catch Block gefangen wird, muss man das untersuchen. Das liegt nicht an der Qt grundsätzlich, die kann da auch nicht stören. Außer vielleicht irgendwelche Compileroptionen passen nicht zusammen.

    ellipse für alle unspezifische. Ja, und? Was meinst du da mit Silverbullet?

    factorypattern schrieb:

    Ich gehe davon aus, dass Du den ganzen Thread nicht durchgelesen hast. Nochmal der Haken: Ich bewerbe mich nicht um Senior SW-Entwickler C oder C++.

    Ich denke schon, dass ich das meiste durchgelesen habe. Ich beziehe mich auch nicht 100% auf deine konkreten Fragen oder deine Situation, ich teile dir einfach meine Überlegungen mit, vielleicht hilfts dir ja weiter. Und jemand der so eine Bewerbung bekommt, muss sich entscheiden, was er mit dem Mitarbeiter anfangen kann. Deswegen musst du das bei deiner Bewerbung auch berücksichtigen. Und wenn du einfach drei Jahre Berufserfahrung hinschreibst, ist es schon nicht wenig. Da erwartet man normalerweise auch ein etwas höheres Gehalt und evtl. anspruchsvolle Tätigkeiten. Deswegen muss dem Personaler auch klar sein, was du taugst und was du erwartest.



  • factorypattern schrieb:

    Leider kenne ich mich nicht mit der Branche des Interviewers aus.

    Was für eine Branche?
    Normalerweise erwartet man von einem neuen Mitarbeiter nicht unbedingt, dass er sich in der Branche schon auskennt. Das wäre einerseits ein Vorteil, andererseits wäre der Mitarbeiter dann vermutlich auch ein gutes Stück teurer.
    Ich arbeite zur Zeit im CAD/PDM Bereich. Natürlich ist es eine Welt für sich und da muss man sich erstmal auskennen. Ich hab etwa ein Jahr gebraucht, um richtig reinzukommen. Lag jetzt auch nicht unbedingt an der Branche an sich, sondern daran, dass unsere Software so komplex und umfangreich ist und wir irgendwie alles mögliche machen, und wenn es bei uns heißt, da gibts irgendwie Komponente "x" und die macht irgendwas, denkt man sich vielleicht erstmal nichts dabei, aber wenn man die sich irgendwann anschauen muss, dann hängt da oft sehr viel mehr dran, als man erwartet hätte. Deswegen fühlt man sich als Anfänger erstmal erschlagen. Wenn man etwas einbauen muss, fängt man und denkt, man ist gleich fertig. Und dann erfährt, dass man noch 200 Sachen nicht berücksichtigt hat... Also, es reicht normalerweise, wenn du als Entwickler gut genug bist, dass du ein Experte in der jeweiligen Branche bist, erwartet man selten.



  • Mechanics schrieb:

    ... Deswegen musst du das bei deiner Bewerbung auch berücksichtigen. Und wenn du einfach drei Jahre Berufserfahrung hinschreibst, ist es schon nicht wenig. Da erwartet man normalerweise auch ein etwas höheres Gehalt und evtl. anspruchsvolle Tätigkeiten. Deswegen muss dem Personaler auch klar sein, was du taugst und was du erwartest.

    Es gibt verschiedenen C oder C++ SW-Enwickler. Manche beherrschen C oder C++ innerhalb eines Jahres schon so gut wie Du, dass ein Buch wie "Effective C++ Programmieren" verfassen können. Es gibt aber auch die Programmierer, die fachlich schleppend vorangehen. Ich gehöre leider zur zweiten Gruppe. Ich bin nicht so schlau wie Du, aber will andere Leute nicht anlügen, dass ich nur 6 Monate mit C++ beschäftigt bin, und in ein paar Jahren Scott Meyers werde.



  • Nicht dass es falsch rüberkommt, ich hab durchaus auch paar Jahre gebraucht, bis ich mich mit C++ anfreunden konnte. Ich hab halt einfach als Schüler angefangen und hatte mehr Zeit.
    Es geht nicht unbedingt darum, sehr gut zu sein (natürlich sollte man das selber aber schon als Ziel haben). Man braucht auch "einfach nur Programmierer". Und wenn der Personaler dich richtig einschätzen kann und sowas auch braucht, sollte es schon klappen. Du solltest allerdings weiterlernen.



  • factorypattern schrieb:

    Es gibt verschiedenen C oder C++ SW-Enwickler. Manche beherrschen C oder C++ innerhalb eines Jahres schon so gut wie Du, dass ein Buch wie "Effective C++ Programmieren" verfassen können.

    Letztes Jahr habe ich Scott Meyers auf der Meeting C++ kennengelernt. Er hielt dort unter anderem einen Vortrag, wie er das neue Effective Modern C++ geschrieben hat. Und wie zu erwarten, schreibt man sowas nicht mal einfach so. Er beschrieb, wie er einen tollen Tipp herausgearbeitet hat, das zur Korrektur und Bewertung an andere Entwickler gegeben hat, die dann festgestellt haben, dass der Tipp gut gemeint, aber kontraproduktiv ist.

    Wir sind alle nur Menschen, die über mehr oder weniger Erfahrung verfügen. Erfahrung, die uns vor Fehlern bewahrt, aber auch in Fehler führen kann, wenn die Erfahrung veraltet ist.

    Wo ich mir sehr, sehr sicher bin, ist dass es keinen C++-Entwickler gibt, der die Sprache nach einem Jahr wirklich beherrscht. Ich habe vor 21 Jahren mit C++ angefangen und lerne regelmäßig dazu.

    factorypattern schrieb:

    aber will andere Leute nicht anlügen, dass ich nur 6 Monate mit C++ beschäftigt bin, und in ein paar Jahren Scott Meyers werde.

    Mit 6 Monaten Programmiererfahrung in C++ bewirbst Du Dich wohl auch nicht als Software-Architekt.

    Beeindruckt haben mich Deine Antworten auch nicht. Du bist halt auf Deinem Weg, Du brauchst bzgl der Umsetzung noch Anleitung, wenn das Professionell werden soll und das ist doch okay. Abgeschreckt haben sie mich jedenfalls auch nicht.
    Die Fragen haben mich allerdings auch nicht beeindruckt: Derartiges ist in Bewerbungsgesprächen nicht unüblich.

    Wir sind alle nicht als Meister vom Himmel gefallen. Vorteil ist natürlich, wenn Du die Zeit hast, Erfahrung zu sammeln, indem Du beispielsweise Datenstrukturen mal selbst nacharbeitest, um sie zu begreifen.
    Daraus vielleicht Template-Container machst, um Dich mit Templates anzufreunden.

    Die Effizient C++ Bücher sind ein Weg, Du kannst nach C++-Idiomen suchen oder Coding Standards und Dir darüber Gedanken machen, worüber sich professionelle Entwickler Gedanken machen und warum. Das hilft, um schnell große Schritte zu machen.

    Deine Erwartung an Job und Bezahlung muss entsprechend sein - das schriebst Du ja schon. Große Firmen können es sich leisten, Leute mit 10 Jahren Erfahrung und Diplom zu bezahlen und den Rest zu ignorieren. Für kleinere Firmen kann man aber auch die Chance sein, günstig an jemanden heranzukommen, der C++ wenigstens schonmal gesehen hat.

    Und der Rest ist auch ein wenig Glück. Ein Freund von mir, der derzeit in Ausbildung zum FIAE ist, macht durch die Ausbildung Java. Ich rate ihm zu C++. Er hat jetzt eine Praktikumsstelle, die er ohne C++-Kenntnisse erhalten hat, wo er auf C++ auf einem Raspberry PI programmieren soll, was wirklich interessant klingt.



  • @factorypattern: Wenn ich das richtig mitgekriegt habe, dann bist Du bisher nicht zu Bewerbungsgespraechen gekommen, sondern der Bewerbungsprozess war immer vorher beendet. Die Antworten auf moegliche Fragen, die waehrend eines Bewerbungsgespraechs aufkommen koennten, sind zu diesem Zeitpunkt also noch nicht relevant. Allerdings hast Du glaube ich an der Reaktion der anderen Forennutzer hier gesehen, dass Deine Grundlage da ausgebaut werden sollte. Man braucht uebrigens keinerlei Fachkompetenz, um das als Interview-Partner feststellen zu koennen: Man merkt es schon an der Art und Weise, wie Du auf die Fragen eingehst. Ich kann mir vorstellen, dass man das auch schon im Bewerbungsschreiben feststellen kann. Zum Beispiel ist, wie volkard schon angemerkt hat, die Verwendung des Begriffs "C/C++" ein Indiz in diese Richtung. Vielleicht gibt es da aber auch noch viel mehr. Es waere vielleicht wirklich ganz gut, wenn Du mal so ein Bewerbungsschreiben anonymisiert in Textform hier postest. Dann wirst Du zwar vermutlich jede Menge Kritik von den anderen Forenteilnehmern einstecken muessen, aber vielleicht gibt es dabei auch ein paar Aha-Erlebnisse, die fuer Dich sehr hilfreich sind.



  • Hallo Xin, Hallo Gregor,
    bedanke mich ganz herzlich bei Euch für alle wertvolle Vorschläge. Das Motiv meines Beitrags besteht einfach darin, Eure Erfahrungen mit dem aktuellen IT Arbeitsmarkt zu wissen, und um mögliche Tipps zur Vorbereitung auf den hervorstehenden Test zu bitten. Im Thread habe ich auch glücklicherweise von Euch viel gelernt. Nach Euch muss ich schon genug Themen selbst beizubringen. Gott sei danke, habe ich noch ein bisschen Luft vor dem Vorstellungsgespräch. Trotz meines akademischen Erfolgs bin ich nicht so weit mit C oder C++ Programmierung 😞 Die Stellensuche ist zwar stressig, aber drängt mich meine Kenntnislücke zu schließen. Gotteswill sind meine Antworten NICHT Euch zu beeindrucken, sondern wirklich fachliche Kommentare bzw. Kritiken von Euch anzusammeln.

    Von ein paar Beiträgen habe ich quasi folgendes Gefühl: Ich bin eine normale Frau, suche gerade einen normalen Mann. Allerdings erinnern manchen Leute mich wiederholt dran, dass Tom Cruise mich nicht passt. Persönlich bin ich zurückhaltend, und üblicherweise nicht sensibel zum Spotten aus meiner Familie. Nochmalige Ironie von Fremden Menschen stößt aber jedenfalls an meine psychologischen Grenzen. Deswegen scheue ich mich, meinen Lebenslauf hier zu veröffentlichen.

    Danke nochmal für Eure Antworten und ich drücke mir fest die Daumen 🙂



  • Gut so, ich denke aus dem Thread kannst du einige gute Tipps rausziehen. Natürlich ist irgendwann der Punkt erreicht, Kritik zu ertragen, vor allem weil es leichter gesagt als getan ist, diese nicht persönlich zu nehmen. Das verstehe und wünsche dir daher auch alles gute weiterhin!



  • @factorypattern: Alles klar. Bei so etwas muss man rechtzeitig die Notbremse ziehen, bevor es einem zu viel wird.

    Ich erinnere mich an mein Studium und meine Promotion... da war es hin und wieder so, dass ich Arbeiten an Korrekturleser gegeben habe und die kamen mit fast mehr rotem als schwarzem Text zurück. Derartige Erfahrungen können schon frustrierend sein und es ist wichtig, dass man das dann nicht persönlich nimmt, sondern einfach das Beste aus der Kritik macht, was man daraus machen kann. Meine Kollegen mussten natürlich auch alle hin und wieder mit so etwas umgehen. Und das ist sicherlich ein wichtiger Punkt, den man sich klar machen sollte wenn man mit viel Kritik konfrontiert wird: Die anderen trifft es auch oft genug, es ist also nicht so außergewöhnlich, wenn man auch mal mit so etwas konfrontiert wird.

    factorypattern schrieb:

    Danke nochmal für Eure Antworten und ich drücke mir fest die Daumen 🙂

    Alles Gute auch von mir. 🙂


Anmelden zum Antworten