Yeah, that’s probably more the issue. We’ve seen too many times throwaway code become production code because “it works already, we need to move forward”.
Yeah, that’s probably more the issue. We’ve seen too many times throwaway code become production code because “it works already, we need to move forward”.
Thanks for your input.
I think I would like to follow all these people and their work on C, and their in depth knowledge. But free time is sparse, and I don’t have the mental energy when I do have some time.
As for my work, I work in a startup where I am the only one doing what I do. However, I have a lot of leeway in how I code, so I am always somewhat read on best practices. So I can’t really refer to a senior dev, but I can self-teach.
I think I coded enough that a lot of what I do is a reflex, and I often can approximate a first solution,but I have doubts all the time on how I implement new features. That makes it so that I am a slower coder and I really struggle to do fast prototyping.
I am aware enough of what I do well, and what I struggle, so there’s that.
They can see how it’s done and code their own thing. They don’t have to cut and paste the code, just know how its done.
At least, we know emotionally that it will get better with the second one haha, even if the day to day is rought.
With the first one, it felt like we would never get to the other side of it. But we did and we will for the second one.
I am eager to learn new things, so having so little free time is definitely tough. And the lack of sleep/energy makes it even harder.
Thanks for the encouragement, it’s nice to be acknowledged by someone else that went through the same thing. We often forget that we are not alone and a lot of people got through it before us.
I work in a startup, so I’d say that almost every day, I learn something new. So I don’t really need to look in-between tasks because a lot of tasks bring new challenges.
When I worked in corpos, my job was restricted to the same tasks and specific knowledge. Now it’s the opposite where I need to learn what I need to create a feature or fix an issue.
I guess that lately, a lot of new things have popped up and I need to absorb a lot of information to implement the features I need. And that is probably what is triggering the imposter syndrome.
Thanks for the insight, it is appreciated.
What I like about embedded is that it’s between software and hardware, where you have to know both to a certain extent. It kinda feels like being a mad scientist bringing a monster to life. Seeing that my code makes physical actions (lighting a LED or controlling a motor) never seems to get old, even when trivial.
I am confronted everyday about the things I don’t know because I work in a startup and I am the only one that does what I do. Any issue that I have tells me what I need to learn to fix the issue.
You are right that for a lot of people, what I do seems like magic and we often forget the extent of our knowledge because it has become innate.
Thanks for the insight, I appreciate it.
Through the different replies, I reflected on what I know and what I do for work and I feel like my skillset is more akin to a generalist/integrator, which is needed. But I also feel like everyone in my domain does that. Which might or might not be true.
I guess knowing our strengths and weaknesses is also a skill in itself and a little bit of self doubt here and there can help us grow and direct our knowledge in a certain direction.
Thanks for the insight.
It’s funny because I often have to look for the prototype of a function because I often forget all the arguments a standard C function uses, but otherwise, i feel like I am proficient enough to know where to look for, which in my case is normal because I won’t memorize all the details of how each peripheral of the mcu works.
I work in a small start-up where I am the only one doing what I do, so my epiphanies come from the struggles I have.
Other people I work with often have a blank look in their eyes when I try to explain some issues or what the code does because they don’t have the skillset to comprehend what I am doing. So this isn’t a path for me (yet, hopefully we can grow enough where we need more people in my field).
But I appreciate your experience. I will certainly think about a way to play in the innards of my language so that I can understand it better.
Thanks for the insight. I guess one thing that causes my imposter syndrome is that I want to know how everything works in details.
I agree that for other people, what I know seems like magic to them. It’s easy to look at what we don’t know, but we don’t take the time to appreciate how far we’ve come. We should do that more often.
Thanks for the input, it will make me think about how to approach how to get the skills I need.
I’d say I am decent with FreeRTOS which is pretty much just a scheduler with a few bells and whistles.
I haven’t used assembly in a long while, so I know where to look to understand all the instructions, but I can’t tell right off the bat what a chunk of assembly code does.
Algorithms, I am terrible at these because I rarely use them. I haven’t worked in a big enough project where an algorithm is needed. I tend to work in finite state machine which is close to algorithms, but it’s not quite it. And a big part of my job is interfacing peripheral chips for other to use.
The blogposts are the example I had because this is usually where I find my solutions.
I do understand that I don’t need an in depth knowledge of everything about my language, but I sometime feel like I should know more. But again, this is the imposter syndrome talking.
I am thinking about blogging once my kids are older and I have more time because I am grateful when someone else does and I want to contribute as well.
5 years professionally and I can find jobs, so yeah I must do something decent. But that imposter syndrome is strong these las weeks
It’s a strong typed language with a minimal set of guard rails, so there is certainly some considerations to take into account, but the compiler are pretty good and give more leeway to the dev.
I think I’ll never not make & &&, | || or = == operators mistakes. It’s so easy to go over it fast and not notice the mistakes.
I like developing MCU firmwares because there is limited amout of resources and you usually have direct control of what is running when.
I feel the better than many, but mediocre in my soul. I mean, I get paid to code, so I certainly have a good enough knowledge to do so. But I have the tendancy to undersell myself.
I think that one of my issue is that I’d like to be more knowledgeable to the smaller bits and bytes of C, but I don’t have the time at work to go deeper and I don’t have any free time because I have young kids.
My issue is with the imposter syndrome i’d say.
I don’t know asm on the tip of the fingers because today’s mcu are pretty full of features that makes it not useful most of the time, but if I need to whip up something in asm for whatever reason, I know the basics and how to search for documentation to help me.
I try to follow MISRA C guidelines because it’s pretty easy to follow and it gives tool to reduce mistakes.
I have enough experience to avoid many common pitfalls such as overflows, but for whatever reason, it always feel like I don’t know enough when I come across a tutorial or a post with a deep dive in a specific part of an embedded project or on the C language.
When I read these tutorials/posts, I understand what is being done, but I could not come to these conclusions myself, if that makes sense.
I really like brain twisters. It can get frustrating at times, but it’s the most fun out of the profession to me.
Imposter syndrome is strong
It’s like recreating the vacuum of space with words.
PR talk needs to die a fiery death.