Following our recent partnership announcement with RMIT and Apple to help students bridge the gap from higher education to the real world of business, Tigerspike hears accounts from two Software Engineers in NYC and Melbourne, about their experiences of entering the world of work.


A daunting experience

by Alex Jing, Associate Software Engineer, Melbourne

Going from theory learnt at school to make the initial jump as a professional can be a daunting experience for students stepping into the industry. In this post, I will share some of my thoughts on the transition from education to profession for IT.

Self Teaching & Expanding Skillsets

Upon completing your course, while seeking your first job as a graduate or even during your study, it’s a good idea to look to expand your skills by doing some personal projects or something fun that you find interesting, such as creating an app or games. If you have some ideas, start your own personal project or if you are not the ‘creative’ type like I was, maybe you could help others in making their ideas into reality.

Based on my own experience, you learn things faster when working on real projects than just watching tutorials. I started making some websites for people from the second year in uni, there wasn’t really any money involved initially, but I really enjoyed the process of making things by using what I learnt. Of course, there were many things I didn’t know, however, seeing myself get closer to the goal pushed me to tackle problems one by one, which was also a great way to learn.

Out On The Field

Tertiary education equips us with knowledge and skills such as how to teach yourself, problem-solving skills but more often than not, the teaching material taught in school is outdated. For example, when I was learning my first programming language in my first year of uni to my final semester Computer Science Project, Java was the language we used for the most part. However, when I tried to find a job after graduation, I realised that C# and .Net were the favourable skills for employment.

Doing an internship can net you real industry working experience; not only will you be able to understand the trends of the industry but it’s also an opportunity to meet real IT professionals and by working with them side by side, you will notice that you learn things much quicker and better than on your own. Not only does this save a lot of time but greatly improves the effectiveness in learning. You will soon realise that it’s not only about how to get things done but also how to get things done in the best way or appropriate way as well as avoiding any bad habits you may develop if you were to tackle it on your own. You may also get opportunities to work with different technologies and a great chance to discover yourself and find out what you truly enjoy within IT. I started as a full stack developer but nowadays I find myself more interested in mobile development. To me, nothing can be more exciting than trying new things.

General Advice

When you were in school your priority was getting the degree. Relationships you had with the teaching staff or colleagues can be easily overlooked. Keeping connected with your classmates from that lecture or tutorial class you were in together can be your first form of networking as the similar goals and objectives for the most part while studying. What path are they taking after finishing their course? Who do they know? What are their plans for their career?

Sharing knowledge with your peers can be surprisingly more helpful than you think. It can help you in getting synced with the industry trends and provide you with knowledge which will increase your awareness to hopefully point you in the right direction. Sometimes landing the ideal job can be a matter of knowing the right people given that you are confident in your skills. Referrals from a network might also increase the opportunity give you the edge when applying for jobs.

Final Thoughts

Despite the attempts that schools make in simulating real industry standards of work, it must be understood that it is vastly different due to reasons like costs and demand. You often hear students question “we’re not going to use this, why do we need to do study it?”, this goes without saying but schools are purely educational with the purpose of building our foundations, to mentally prepare us for the industry and set the mould that will eventuate to becoming a professional. The reality is that as a student, your only purpose is to learn under what is a safe and forgiving environment while out in the field you must contribute to meet business demands, where you are accountable and responsible.With technology being so accessible and reliable in this day and age, I believe you can achieve a great deal even by yourself and the limits are as much as your motivation when it comes down to learning and connecting with the industries or communities.

With technology being so accessible and reliable in this day and age, I believe you can achieve a great deal even by yourself and the limits are as much as your motivation when it comes down to learning and connecting with the industries or communities.


Enjoy the journey

by Henry Chan, Software Engineer, New York

I could not have arrived at where I am today without the people I’ve met and worked with at Tigerspike

It wasn’t that long ago that I celebrated my two year anniversary here at Tigerspike. I reflect on the journey that brought me to where I am now as a software engineer. It can be a scary thing to push code out to production for the first time or figuring out why there are a few hundred error messages from the compiler after updating your libraries, or even resolving Git conflicts when making a pull request. Regardless of how much you learn in school, you’ll never be fully prepared for the real world. But I want to let you know that this is normal.

The Beginning

I remember spending my first few days at work just trying to get a project to run on my machine. I didn’t know what was going on because all the projects I created at school ran just fine. But I soon realized that taking on an existing, fully developed project that someone else created was something I had never experienced. I sought help from my colleagues and was fortunate to have my manager eventually help me get it up and running. What I learned from my experience was that you’re not going to know everything — and that’s okay. It’s important to know that the people you work with have your back and want to see you succeed. When you work with a team, the more time you spend with them, the more comfortable you’ll feel asking them questions. There will be times where you’ll be thrown into the deep end and not have a clue where to go, or what to do: but that’s what a team is there to do, to help each other find solutions towards a goal, both big and small.

Learning to Communicate

Communication is an important skill to have as an engineer. Not only do you need to learn how to communicate with other fellow developers, but non-technical team members, and even non-technical clients as well. It can be easy to get caught up in technical lingo, but you’ll eventually have to explain your work to someone who may not know anything about programming. Or interpret a feature that a client wants and translate it into code. Communication was something I urgently needed to improve on. Don’t get me wrong, I could talk with other developers no problem. But whenever I tried explaining myself to a non-technical person I found it difficult to express my thoughts and ideas to them. I remember going into a client meeting of ours to explain some of the work that we would be doing. I ended up taking a back seat in most of the conversations and letting my teammates do the talking because I didn’t know how to speak to them, or what to say. But after many meetings and showcases, I began to develop a better understanding of how I could communicate with others on the technical spectrum.

Development

It’s also important to challenge yourself every day. What I enjoy about working at Tigerspike is that I get to work on a variety of projects. Different projects mean working with different technologies. And so I am constantly learning something with every project I take on. I was given the opportunity to cross train into Android this past year and eventually was able to pick up React Native, a popular framework which unites both iOS and Android platforms for one of our most recent projects here in New York. You don’t necessarily have to learn a new language or a new platform so frequently as I did. But I do think that it’s important to learn something new every day. Technology moves fast, there’s always something new out there to learn and it’s important to stay relevant in the realm of technology.

Final Thoughts

I think that it’s crucial for you as an engineer to develop your soft skills. It can be easy to hide in a corner somewhere and code away without interacting with anyone. But there’s more to your profession than just the technical skills. You’ll need people by your side to help accomplish something that you could never do alone. My experience at Tigerspike has helped me grow as professional, which in turn has helped me accelerate my knowledge and growth as a software engineer — I could not have arrived at where I am today without the people I’ve met and worked with at Tigerspike.

Interested in joining Tigerspike?

Have a look at our latest job opportunities and feel free to follow us on social media to stay updated on all things Tigerspike.