The first time I read Wayne Gretzky's famous quote I was a teenager who was trying to understand which direction he should take in life. Although I had a rough idea about what's expected of me: get an education, get a job, start a family and so on; over the years I discovered that life has much more in store than I initially thought. There are so many things to do, there are so many things to be passionate about. It would be a shame to limit ourselves and never try something new, never try to improve our character, our skills and eventually our way of living.
Meanwhile I discovered that my passion is software engineering and many things have changed over the past ten years or so. Whether I'm thinking about the college years or the seven years I've been working as a full time employee for various companies, there were times of struggle, times of celebration but most important the satisfaction of accomplishing something meaningful after a hard day's work.
During my last year in college I discovered the power and diversity of the Java platform and I was amazed at how many things one can do with it. Soon I decided that I want to invest time and energy into learning as much as I can about it and right after finishing my studies I got my first job as a Java developer. I've been working with Java technologies ever since. I won't spend more time talking about this particular topic because I'm more interested in sharing my thoughts about what it means to me to be a software engineer.
Working as a software engineer challenges me constantly. It helps me evolve both professionally and personally because software engineering is not sitting in front of a computer and hacking some code. It's interacting with people - actually many times mastering the art of dealing with people is more important for the success of a project than the ability to write code -, taking the right decisions, being rigorous and organized, committed and responsible. And perhaps one of the most important things: being curious and hungry for knowledge, constantly learning. In my country there's a saying about doctors, and everybody agrees that they have to learn new stuff their whole lives. Few people that are not working in IT see though that if you're a software engineer and you want to stay in business you can never leave out the learning part.
Also, working in this domain helped me see more clearly different aspects of life. The explosion of the technology related things everybody uses every day made me realize that somehow we are shaping the present and also the future of our civilization. That leads me to another conclusion: we have a lot of power therefore we have greater responsibility. People that are part of the IT culture - because software and hardware engineering it's not just a job, it has become a culture - are the ones that come with new ideas, innovate and make that future possible.
Being part of a large company has its benefits. For instance, you're exposed to a lot of information both from a technical and business perspective. Also it was essential for me at the beginning of my career that I received guidance from the more experienced colleagues. Another important aspect is the stability a company usually offers. Even when things are not that great most of the time they find a solution. However, companies are profit oriented, and it's normal to be so. Therefore there are many constraints that have to be met and many times those constraints hurt freedom; the freedom to choose the project you're working on, the freedom to choose the technologies you're using and eventually, the freedom to express your most innovative ideas and bring them to life. Of course that's not a rule, but I've seen it happening many times.
At some point during the past few years I began to feel more and more the need to be able to choose what I'm working on. Then I began to understand how important it is to be passionate not only about the technologies you're applying but also about the reality you're trying to model through the product you're developing.
It seems that another important ingredient that contributes to a success story is the context which you find yourself in, and I'm thinking here about timing and location. Developing software is a creative process and artists need to be able to choose the time and place of working so they can deliver their masterpiece. Of course we can't take that to extreme, because usually the success of a project also relies on that dreaded word, "deadline". What I'm trying to say is that it's nice from time to time to be able to wake up in the middle of the night and implement some genius idea that solves the problem you just couldn't find a solution to during the day. It's also nice to be able to escape the crowded city and charge your batteries in a quiet place without needing to call it a vacation.
Such things are possible through Toptal's way of doing business. I've recently learned from a friend a few things about the Toptal team and it seems that it's a great community to be part of. I'll soon have a discussion with a representative and I'm excited about that! I'm looking forward to knowing them better and eventually be able to confirm myself that these things are true and more!
No comments:
Post a Comment