So far I have now been working as an application developer for 2 years, my first one as a Junior Java web developer in a small company (more like a startup) for 1 year, then I resigned for an Intermediate Java dev position offer from a different company (a big one). So far it's a tie between the two if you'll factor in all the positives and negatives when comparing a small to a big company.
My first job was more flexible, I can suddenly decide to work from home for the day without saying anything beforehand and nobody would bat an eye, or if I arrive after lunch then it's no big deal as long as I complete the 8 working hours and I'm present during scheduled meetings, so basically a full flexible schedule. The problem is that I didn't see any possible career progression in there, I was just about to hit the 1 year mark and I already felt stagnant. We're using the same technology, we rarely do something different (I was assigned with creating and maintaining the small ecommerce apps, which means I usually create the same features again and again, sometimes I just copy paste a part of my old codes and just modify it a bit), and there's not much coding rules nor strict architecture to follow since delivering fast is TOP priority for a small company and it's hard to find time for refactoring existing modules when you still have tons of features to create. I'm not a fan of letting a messy codebase be but I really didn't have a choice.
So yeah, not liking the process + feeling stagnant = open for new opportunity. One of the biggest companies in Asia started building an office here and they're searching for pioneer developers, so I took the offer up for a change. What I like about it is that there is a clear career progression, there's a budget for training or education if ever I decided to get a masteral, and there are rules to follow when it comes to codes. I can also change teams if I'm starting to feel stagnant again or if it's just not a good fit personality-wise. What I dislike... well, this time there are lots of processes (which I think is normal considering their size), but it also makes it slower to get something done if you'd need to do stuff or ask for formal approval from bosses or different teams (Infrastructure team for example when it comes to server configs) to do something to the application. I was used to having access to pretty much everything so it took some time for me to get used to. Second, it's just 1 hour flexi, I can't easily work from home either, but I guess it's fine as long as I'm learning new things.
Lastly, I'm not sure if it's counted, but I also have a part time freelance job as a nodejs developer right now, basically a serverless API (using amazon web service) to be integrated to some mobile apps to be created using reactjs. I'm still learning it though since I'm a java dev in my day job. I joined a hackathon last year, made some new friends, and 1 of them have kept in touch with me and offered this freelance job. He said if I'm willing to learn nodejs then it's fine even if I don't have any background. So I thought "why not?" Then I joined in.
So far I have now been working as an application developer for 2 years, my first one as a Junior Java web developer in a small company (more like a startup) for 1 year, then I resigned for an Intermediate Java dev position offer from a different company (a big one). So far it's a tie between the two if you'll factor in all the positives and negatives when comparing a small to a big company.
My first job was more flexible, I can suddenly decide to work from home for the day without saying anything beforehand and nobody would bat an eye, or if I arrive after lunch then it's no big deal as long as I complete the 8 working hours and I'm present during scheduled meetings, so basically a full flexible schedule. The problem is that I didn't see any possible career progression in there, I was just about to hit the 1 year mark and I already felt stagnant. We're using the same technology, we rarely do something different (I was assigned with creating and maintaining the small ecommerce apps, which means I usually create the same features again and again, sometimes I just copy paste a part of my old codes and just modify it a bit), and there's not much coding rules nor strict architecture to follow since delivering fast is TOP priority for a small company and it's hard to find time for refactoring existing modules when you still have tons of features to create. I'm not a fan of letting a messy codebase be but I really didn't have a choice.
So yeah, not liking the process + feeling stagnant = open for new opportunity. One of the biggest companies in Asia started building an office here and they're searching for pioneer developers, so I took the offer up for a change. What I like about it is that there is a clear career progression, there's a budget for training or education if ever I decided to get a masteral, and there are rules to follow when it comes to codes. I can also change teams if I'm starting to feel stagnant again or if it's just not a good fit personality-wise. What I dislike... well, this time there are lots of processes (which I think is normal considering their size), but it also makes it slower to get something done if you'd need to do stuff or ask for formal approval from bosses or different teams (Infrastructure team for example when it comes to server configs) to do something to the application. I was used to having access to pretty much everything so it took some time for me to get used to. Second, it's just 1 hour flexi, I can't easily work from home either, but I guess it's fine as long as I'm learning new things.
Lastly, I'm not sure if it's counted, but I also have a part time freelance job as a nodejs developer right now, basically a serverless API (using amazon web service) to be integrated to some mobile apps to be created using reactjs. I'm still learning it though since I'm a java dev in my day job. I joined a hackathon last year, made some new friends, and 1 of them have kept in touch with me and offered this freelance job. He said if I'm willing to learn nodejs then it's fine even if I don't have any background. So I thought "why not?" Then I joined in.