Employer: MicroMetl Corporation
Job Title: Software Developer
Degree Path: MS – Computer Science from Indiana State University, BS – Computer Science from Manipal Institute of Technology (India)
Hometown: Indianapolis, IN
Current City: Indianapolis, IN
What led you to your getting into tech and this occupation? What was your first job in tech?
My mom taught me how to use a computer at a very young age. I was fascinated with the device and the various things you could do with it. I still remember asking my primary school computer teacher about the different kind of jobs one could do which involved computers. She suggested I think about becoming a software engineer. I didn’t really understand what that entailed back then, but that’s what I decided I wanted to become.
What has been your career path so far?
Education has always been a top priority for me. I decided to get a Master’s degree from Indiana State University immediately following undergraduate school. I worked as a part-time web developer for the university’s Office of the General Counsel. Prior to that, I worked a technical support job for ISU’s IT Department. After finishing grad school, I worked a contract job which had me build an MIS application for a management consulting company. I continued interviewing for full-time roles during this period. One month before my contract ended, I received an offer for the role of a software developer at MicroMetl, my current company, who is in the manufacturing industry. I am satisfied with my career path so far. I have had the opportunity to work in multiple industries.
When you think of a day in your life, what are the main work activities you do or responsibilities you have?
At present, I am responsible for working on the company website’s back-end and product database. I work with the Microsoft tech stack which includes the .NET framework, .NET Core, Visual Studio, Azure cloud services, and SQL Server. Mornings are spent writing new code for the website and the database. I reserve afternoons for debugging and testing sessions. Occasionally, I am tasked with building desktop apps for in-house purposes. I use .NET’s WPF framework to do this. I make sure to journal all the tasks I’ve worked on during the day. This helps in making the software documentation stage easy.
Help us picture your work environment.
My work environment consists of an open office layout. My colleagues and I all work in the same room. We have our desks and workstations which are placed beside each other. This makes it easy to interact and collaborate with each other. It can get a little noisy at times but I haven’t found that affecting my work in any way.
My home office is the opposite of my workplace. It is extremely quiet. I find myself more productive working in the office than when I work at my home office.
What do you love about the work you do?
Before I started at MicroMetl, my forte was Java programming. MicroMetl works with the Microsoft technology stack with C#. So, I had a lot to learn to get up to speed with their current projects. I have to admit it was very overwhelming for the first three months. But, I caught on quickly and found myself working on a variety of projects. I started with database programming and slowly progressed to working on back-end development and desktop application development. I love how every day is challenging for me because there are still a lot of things I don’t know about and have to read up on. I never thought I would get so far with programming in C#. The joy I get when my code compiles and executes with no errors is priceless.
Which personality traits, interests, and abilities are important or common for a person to succeed in and enjoy this occupation?
Having a zeal to learn is essential for a software developer to succeed. Patience and a Never Give Up attitude are equally important. There will be days when even five cups of coffee can’t fix your broken program and you’re convinced you’re in the wrong career. But, don’t let that dampen your spirits. Take a break and revisit the problem later. You never know when you’ll come up with a solution. I’ve had ideas for bug fixes strike me on my long drive home.
Which tools/technologies or technical skills are particularly important for a person in your job to be proficient in?
Being proficient in one object-oriented programming (OOP) language and one database programming language is a must. Widely used OOP languages include Java, C#, Python and PHP. Learning database programming is easy if you familiarize yourself with SQL. Most query languages are dialects of SQL and will not be very difficult to work with.
Which soft skills (aka general business skills or employability skills) are particularly important for a person in this occupation to be proficient in?
Problem solving and communication are major skills used on the job. The ability to translate a client’s requirements into code is what sets you apart from others. Thus, it is important to ask questions and gain clarity.
You need to make sure that both you and the client are on the same page before you proceed to write code.
From your experience with new grads applying for and beginning jobs in this occupation, are they missing any particular knowledge, skills, or experiences that hold them back? Please describe.
The job market is favorable to grads with good internship experience. A software development internship gives you an opportunity to work with production level code and apply the knowledge you have gained in school. You get to learn things about the profession which you won’t learn in a classroom. There’s also a possibility that the company you interned at would be willing to give you a full-time offer once you graduate. So, try and gain as much relevant internship experience as you can before you finish school.
Which resources, people, books, websites, etc. would you recommend to those who want to learn more or advance their skills in this occupation?
Reddit has been one of my favorite sources for learning. Some of my favorite subreddits are r/programming, r/coding and r/dailyprogrammer. r/cscareerquestions would be of great help to new grads.
Networking and building relationships in the industry will always help your career progress. I go to a lot of tech events in the city and encourage others to do so too. It’s always fun to meet, talk and listen to like-minded people in the industry.
What encouragement or advice would you offer to others considering this occupation or wanting to stand out amongst others?
Developing a routine for daily learning will give you an edge over others. The software we use is constantly changing. Updates roll out rapidly and this makes it hard to keep track of new features. The same can be said about development tools, ideas and methodologies. So, it is important that you keep yourself updated about the latest trends in the industry.
Having great people skills will also work very well in your favor. No matter how good your ideas and technical skills are, they are useless when you’re unable to convey them in a proper manner to your stakeholders. You need to be able to get everyone on the same page.