“Hey Guillem, my computer doesn’t seem to work… Could you come by and try to fix it?”
Any of my friends,
2020.
As a Computer
Engineering student, I’ve noticed that there’s some misconception about what my
degree is about. Joking aside, although most of my friends know that if they
have an issue with their laptop it’s a better idea to call the Technical Service,
they wouldn’t really know what I’m learning taking my University courses. And
even worse, I’m sure most of my family wouldn’t know the differences between Computer
Engineering and for example Electronic Engineering (and yes, I’m sure they care
about me).
So, isn’t it all about coding?
Not really,
in fact I’ve taken some courses where I haven’t written a single line of code. It’s
true, programming is fundamental and many courses involve some sort of coding,
but if you think that studying computer engineering means strictly learning to
code you’re not quite right.
In fact, through
my last 4 years I’ve taken Project Management courses, where I’ve learned the
basics of “traditional” PM, while at the same time I was learning about “agile
methodologies” and more modern team management techniques like Scrum.
I’ve also taken
leadership and entrepreneurship lessons, where I learned about topics like active
listening or the importance of identifying your own strengths and weaknesses.
Maybe all
this can sound weird, and maybe even some people can think that taking this
kind of courses is a waste of time, but I don’t agree with that. I think that
there’s this false believing that the best engineer is the one with the highest
technical skills, that can solve a problem with an extremely little amount of
time and with so minuscule resources that it’s almost magic. And yes, it’s very
important to have strong problem-solving capabilities and to excel at different
technical skills, but we must remember that normally engineers work in teams,
and teams are mainly formed by humans. And since humans are not like robots, I
think it’s important to have some kind of even merely basic notions about how
to interact with others in a way they feel valuable, how to manage teams
without making its members feel like they are just some kind of flock of sheep and,
in the end, making human relations on a business environment as human as
possible.
Okay, so you believe that humans are important, but I want to know what kind of technical knowledge you’ve learned!
First of all,
I must say that as a final year undergraduate student I don’t consider myself
an expert on anything. I’ve met some students that once they’ve finished a
course on some topic, they believe that there’s nothing more to learn about it.
I totally disagree with that mindset. But as a humble student I can list some
different topics that I’ve studied during these years.
Here goes the
rap-like list of some of the coding languages and other development artifacts I’ve
been introduced to until now: C, C oriented to microcontroller programming, MIPS Assembly, Microchip Assembly, SQL, Java, Java but this time applied to Android
development, Swift, some Bash scripting, the “web development basic pack”: CSS,
HTML, Javascript, PHP…
This was a
much longer section before, but I almost fell asleep while I was reading it, so
I decided just to give a brief list so you can make yourself an idea of the topics
you learn while studying my degree. Anyway, if you want a more in-depth
explanation, just let me know in the comments!
And what are the Career Opportunities once you finish?
I don’t
really know. Okay, maybe I’ve exaggerated a little, but there are really so many
different fields that a computer engineer can work on that makes it difficult
to sum them up.
For example,
as a computer engineer you can end up more on the computer science side, focusing
on algorithm design, complexity analysis, etc. You can also decide that you
prefer building and typing code, so maybe a software developer profile fits you
better. And even as a software developer you can focus on many different areas,
mobile developer, web developer, low-level developer (it doesn’t mean it’s
easier, it means it’s closer to hardware). And don’t forget about team
management profiles, as a computer engineer you can also learn more about team
management and manage engineering teams.
As you can
see, computer engineering offers plenty of different options to specialize, so even
computer engineers can have many different profiles between us. In fact,
this means that probably I don’t know even a 1% about my degree, but it also
means that if you’re eager to learn and you find this field thrilling, you’ll enjoy
it a lot.

3 Comments
This comment has been removed by a blog administrator.
ReplyDeleteThanks for publishing such great information. You are doing such a great job. This information is very helpful for everyone. Keep sharing about Publish Paper In Computer Journal. Thanks.
ReplyDeleteYou sometimes match a threaded insert into a hole by using the tip of a hot soldering iron to push it into the plastic, however I assume this methodology is weak. It is better to mount the insert so might be} a|that there's a} retaining collar in front of it. Fastening a screw into the insert pulls it in opposition to the collar, bracing the insert and giving the screw one CNC machining thing to pull on. Springs printed from plastic simply aren’t nearly as good as good} as metal springs, no competitors. Buying a equipment implies that I can always discover matching springs once I want more than one for a project.
ReplyDelete