Becoming professional. Really need advice
I am really desperate at this point and struggling with becoming a good software engineer. I have been working full time in the industry for 3 years now. How did you people do it?
My story short: I was not any kind of child prodigy and I haven't even known of programming until I was in college. But I was talented in math and analytical thinking, and I did fall in love with programming, that's how I survived college but it was really tough for me, and I don't think I really learnt much. My college wasn't very good, but I tried my best but never built anything "big", just a few small projects for courses at best. I never deployed anything to "production", neither in college nor at job [roughly speaking]. At my first and only job right after college I got in FAANG [for those of you who are surprised: I am smart by nature and that's how have been able to survive so far and even get such a job but I applied for junior role and they never asked anything hard, I was lucky], I have never been given any "projects" to build the muscle of designing things from scratch. It has been mostly maintaining things and writing a few lines here and there. I am extremely afraid I am no good and that I am losing time by not learning anything, and say, if I were faced with a task of building a production system, I would not know where to start.
I wonder, how do people actually become architects and just really good programmers?
Especially when your senior colleagues are not really teaching/explaining. I realize it is also extreme privilege to be at such a place where you can learn.
To give you a concrete example, just when I started, I was given a task of implementing a certain feature and it took me 7 months. I felt so awful and really ashamed, and cried at night many times. When I asked for some help, I got some general discussion at best but never actual help as in: "I have a build problem I can't resolve for a week now". I was given an answer "well [starting at the ceiling] how would YOU resolve it?" or "I don't know ask X". X replies a few days (!) later with "I don't know either". (it was during corona times so everything online) The most helpful person ended up being on the other side of the world - in the US from a completely different team. I ended up with a design which was never really reviewed even though I presented it, got no feedback... and it was probably not the worst, but also not the best design...I basically had just one iteration and was extremely scared of breaking things by changing anything, once I got it to work, because I knew no one would help me if something goes wrong and I break production.
How do people actually become good at software engineering? and also while at big companies? I am in FAANG but I feel like trash. I feel like I am not learning anything and sitting at one planning meeting until the other. At the same time, I am scared to leave because I am afraid it is going to be same or worse in other companies (smaller or FAANG) since the good mentors and senior engineers willing to share the knowledge do not necessarily corelate with FAANG. in my experience.
I want and wanted to learn, and do a good job!! I want to give back to the society, I want to bring value to the world...(and not bullshit corporate "value" but actual value, in any form - since I know not everyone is lucky like me to go to college etc.) On that project, I felt like I am a blind kitten that is given a stick and a stone and is told to build a rocket. with no guidance, and the attitude "you figure it out". And I realize there are probably lots of engineers who would have done great! I only wish to ever become one of those, but I do not know how.
As for personal projects, I mean, you can only learn so much by building your own website and such. #careeradvice #faang #junior #mentorship #softwareengineering #engineer
comments
Step 2 - Read books, papers, blogs. Study good open source projects
Step 3 - Invest a little time in building things on your own.
Step 4 - Continue that for 10 years. It takes time. You might have unrealistic expectations. If you look around you’ll probably notice lots of people with their own strengths and shortcomings. You might not be the next John Carmack, but that’s ok. Almost no one is.
And which country?