Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API

From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "cordova"
-
Today's butt hurt sponsor is... Cordova!
Whoever came up with wrapping web apps in a slow and outdated browser and calling them "Mobile Apps" are absolute lunatics, dangerous for the IT society.
These people should have immediately returned to the asylum they had escaped from, as soon as the idea visited their heads.10 -
Government applications meant to handle private data made in the laziest way using cordova. Hell yea. Bonus points for using the developers account with his first and last name as publishing company to put the app on playstore and not their own official one (not that they have one). Whats not to love. Cant wait to beautify that js to find out that the calls are http and not https.3
-
I have been keeping this inside for long time and I need to rant it somewhere and hear your opinion.
So I'm working as a Team Lead Developer at a small company remotely based in Netherlands, I've been working there for about 8 years now and I am the only developer left, so the company basically consists of me and the owner of the company which is also the project manager.
As my role title says I am responsible for many things, I maintain multiple environments:
- Maintain Web Version of the App
- Maintain A Cordova app for Android, iOS and Windows
- Working with pure JavaScript (ES5..) and CSS
- Development and maintenance of Cordova Plugins for the project in Java/Swift
- Trying to keep things stable while trying very hard to transit ancient code to new standards
- Testing, Testing, Testing
- Keeping App Stable without a single Testing Unit (sadly yes..)
- Just pure JavaScript no framework apart from JQuery and Bootstrap for which I strongly insist to be removed and its being slowly done.
On the backend side I maintain:
- A Symfony project
- MySQL
- RabbitMQ
- AWS
- FCM
- Stripe/In-App Purchases
- Other things I can't disclose
I can't disclose the nature of the app but the app is quite rich in features and complex its limited to certain regions only but so far we have around 100K monthly users on all platforms, it involves too much work especially because I am the only developer there so when I am implementing some feature on one side I also have to think about the other side so I need to constantly switch between different languages and environments when working, not to mention I have to maintain a very old code and the Project Owner doesn't want to transit to some more modern technologies as that would be expensive.
The last raise I had was 3 years ago, and so far he hasn't invested in anything to improve my development process, as an example we have an iOS version of the app in Cordova which of course involves building , testing, working on both frontend and native side and etc., and I am working in a somewhat slow virtual machine of Monterey with just 16 GB of RAM which consumed days of my free time just to get it working and when I'm running it I need to close other apps, keep in mind I am working there for about 8 years.
The last time I needed to reconfigure my work computer and setup the virtual machine it costed me 4 days of small unpaid holiday I had taken for Christmas, just because he doesn't have the enough money to provide me with a decent MacBook laptop. I do get that its not a large company, but still I am the only developer there its not like he needs to keep paying 10 Developers.
Also:
- I don't get paid vacation
- I don't have paid holiday
- I don't have paid sick days
- My Monthly salary is 2000 euro GROSS (before taxes) which hourly translates to 12 Euro per hour
- I have to pay taxes by myself
- Working remotely has its own expenses: food, heating, electricity, internet and etc.
- There are few other technical stuff I am responsible of which I can't disclose in this post.
I don't know if I'm overacting and asking a lot, but summarizing everything the only expense he has regarding me is the 2000 euro he sends me on which of course he doesn't need to pay taxes as I'm doing that in my country.
Apart from that just in case I spend my free time in keeping myself updated with other tech which I would say I fairly experienced with like: Flutter/Dart, ES6, NodeJS, Express, GraphQL, MongoDB, WebSockets, ReactJS, React Native just to name few, some I know better than the other and still I feel like I don't get what I deserve.
What do you think, do I ask a lot or should I start searching for other job?23 -
Cordova is the perfect example of the importance of managing a state.
You have 100 plugins in your config and one of them fails? Well, now you are in an inconsistent state. You can't delete the plugin because it doesn't exist but you can't add it because it already exists. If you search any question about cordova on StackOverflow literally ANY answer is like "delete the platform and install it again".
In average I find myself in an inconsistent state more than once a day. No error is handled so I find myself debugging their code and it's horrible, looks like written by someone that had no idea of what he was doing. I know it's legacy and capacitor should be preferred, but what the hell? Really? -
My current dev dream is to move away from JS based hybrid mobile development...
Guess I need to get back to learning Dart and Flutter hey? (: Because, well, fuck Cordova.. fuck it with `rusty-barge-pole.js`.2 -
2 years ago(jan-oct 2020) i was a college student giving his final exams. some of my personal stats were:
- current knowledge of Android Framework and associated stuff(android, java, kotlin, making and deploying apps , best practises, etc) : 30%
- current knowledge of Web tech (html/css/js/php): 5%
- current knowledge of creating backend/frontend apps:2%
also
- free time: somewhat
- Personal health: barely caring about
====
Same year i got my first job (oct 2020) which i switched in next year (oct 2021). before joining the next(my current) job, my personal stats were:
- current knowledge of Java : 30%
- current knowledge of Kotlin : 70-80%
- current knowledge of Android and Android Stuff(the framework, making production ready apps, deploying, best practises , etc) : 70-80%
- current knowledge of Web tech (html/css/js/php): 3-5%
- current knowledge of creating backend/frontend apps:1%
also:
- Free time: lol, i was working at 1 am too
- Personal health: even lesser caring about, body fats and thick muscles at various places
====
it will be almost a year of me working for these guys in November and this has been an interesting year so far. the stats are:
- current knowledge of Java : 35%
- current knowledge of Kotlin : 20-30%
- current knowledge of Android and Android Stuff(the framework, making production ready apps, deploying, best practises , etc) : 20-30%
- current knowledge of Web tech (html/css/js/node/react): 20-25%
- current knowledge of new stuff* (cordova,unity,flutter, react native, ios) : 5-10%
- current knowledge of creating backend/frontend apps:10-15%
also:
- Free time: a good amount of free time, like in addition to weekends and festivals, i take 2-4 leaves every month
- Personal health: improving a lot. loosing weight, gaining muscles, getting better stamina at running and other activities
====
So i am currently at a weird place. As from my stats, you can see that previously i was in a android heavy role in a company that put a lot of pressure, but i was able to become a better sellable dev through it.
My current role is also of an android dev here, but we maintain b2b products and i am sometimes asked to fix bugs in hybrid apps like unity, react native and cordova, so gained a few knowledge there too. and since i have a lot of free time in my hand, i explored a bit of web technologies too (apart from enjoying a relaxing life and focusing on personal health)
However my main concern is that am becoming a less sellable Dev. The lack of exposure/will to work on android tech has made me outdated from a framework that was once my stronghold. remember that i joined my first company purely because of my passion and knowledge of android os.
When i got offer from this company, i also had another, $5000/year lesser offer in hand. both of these offers were very generous , but i went with the greed and took the offer from this company despite knowing that they are looking for someone who will act as a developer-maintainer kind of person, while the other company giving lesser pay had a need of a pure android engineer.
So i am currently 24. should i keep on doing this relaxing but slowly killing job, or go into a painful, pressurizing but probably making me a better "android" engineer job ?2 -
update : we are at hr round baby!!!
part 1 : https://devrant.com/rants/5528056/...
part 2 (in comments) : https://devrant.com/rants/5550145/...
the tech market is crazy mann! it's one of the top indie fintech companies in our country and has a great valuation.
i totally felt that they i am crashing the interviews , and am seriously not trying to be humble. before the dsa round , i was trying to mug up how insertion sort works 🥲
--------
now my dilemma is should i switch if i get the offer. in a summary:
current company:
- small valuation but profitable (haven't picked funding for last 3 years , so poast valuation is some double digit million $, but can easily be a unicorn company)
- very major b2b player in my country. almost all unicorns (including this fintech company) and some major MNCs are their client and they have recently acquired a few other companies of us and eu too, making them- a decent global player
- meh work : i love being a cutting edge performer in android but here we make sdks that need to support even legacy banking apps. so tech stack is a lot of verbose java and daily routine includes making very minor changes to actual code and more towards adding tests , maintaining wrapper sdks in react/cordova/unity etc, checking client side code etc.
- awesome work life balance : since work is shit and i am fast enough, i am usually working only 2-4 hours a day. i joined gym, got into shape , and have already vsited 5 places in last 6 months, and i am a guy who didn't used to have time even on sundays. here, we get mote paid leaves than what i would usually need.
- learning opportunities: not exactly from the company codebase, but they provide unlimited access to various course learning platforms like linkedin learning, udemy and others, so i joined some web dev baches and i now know decent frontend too. plus those hybrid sdks also give a light context to new things
new company :
- positives : multi billion valuation, one of the top players in fintech , have been mostly profitable ( except a few quarters)
- positive : b2c so its (hopefully) going to put me back into racing shoes with kotlin, jetpack and latest libraries.
- more $$$ for your boy :)
- negetive : they seem to be on hiring spree and am afraid to junp ship after seeing the recent coinbase layoffs. fintech is scary these days
- negetive : if they are hiring people like me, then then they are probably hiring people worse than me 😂. although thats not my concern what my main concer is how they interviewed. they have hired a 3rd party company that takes interviews of people FOR THEM! i find that extremely impolite, like they don't even wanna spare their devs to hire people they are gonna work with. i find this a toxic, robotic culture and if these are the people in there then i would have a terrible time finding some buddy engineer or some helpful senior.
- negetive : most probably a bad wlb : i worked for an year for a fast paced b2c edtech startup. no matter how old these are , b2c are always shipping new stuff and are therefore hectic. i don't like the boredom here but i would miss the free time to workout :(
so ... any thoughts about it?4