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 - "such description"
-
Got this from a recruiter:
We are looking for a **Senior Android Developer/Lead** at Philadelphia PA
Hiring Mode: Contract
Must have skills:
· 10-12 years mobile experience in developing Android applications
· Solid understanding of Android SDK on frameworks such as: UIKit, CoreData, CoreFoundation, Network Programming, etc.
· Good Knowledge on REST Ful API and JSON Parsing
· Good knowledge on multi-threaded environment and grand central dispatch
· Advanced object-oriented programming and knowledge of design patterns
· Ability to write clean, well-documented, object-oriented code
· Ability to work independently
· Experience with Agile Driven Development
· Up to date with the latest mobile technology and development trends
· Passion for software development- embracing every challenge with a drive to solve it
· Engaging communication skills
My response:
I am terribly sorry but I am completely not interested in working for anyone who might think that this is a job description for an Android engineer.
1. Android was released in September 2008 so finding anyone with 10 years experience now would have to be a Google engineer.
2. UIKit, CoreData, CoreFoundation are all iOS frameworks
3. Grand Central Dispatch is an iOS mechanism for multithreading and is not in Android
4. There are JSON parsing frameworks, no one does that by hand anymore
Please delete me from your emailing list.49 -
They announce the results and that was where the fucking plot twist was.
I was *not* on the list. I was devastated, to the point of depression. I refused to get over it, sulked at home, fell sick, skipped college for next two weeks straight. It took a few more days for me to recover.
After several visits from my friends and a lot of convincing, I decided to go back to college. I felt hopeless and had pretty much resigned to my fate. Being the idiot that I am, I missed several other interview opportunities during that interim when I was despairing-away.
Semester exams were about to start and I get a call from my staff saying I had cleared the coding exam for one of the companies that was coming for recruitment the next day. I had written this exam like several months ago and didn’t even remember having written it. It was such a short notice and I had zero time to prepare and my psyche didn’t want to(remember how I had resigned to my fate?).
I did manage to make it to the interview. I was expecting a tough interview (this company had a reputation for having tough interview rounds) but all I got was a bunch of tree and linked list and search algorithm related questions (internship interview). I had two rounds. It did really go well but I had learnt to not get my hopes up. Then I noticed other interviewees being called for a third round and they asked me to go home. I was like “meh”. I was used to it at that point in time.
Very unexpected to me, (but i’m pretty sure y’all have guessed at this point) I get a call saying, they have recruited me as an intern! 6 months later, I was working as an employee!
When I look back today, I realize that my current job, in every way, is waay better than the one I had so desperately wanted! The pay, the timing, the location, my actual job description, all of it! As a bonus I have an awesome manager who trusts me! I work with remotely with a team with such high standards and I learn something new everyday.
In my two years here, I have built a couple automation systems from scratch, I have mentored an intern and got him a full time offer, I have had two free two-week trips to the US and I have been promoted once! I’m so glad I was rejected that day (:
Thank you for reading!17 -
Best. Fucking. Title.
If you open a PR with such title/description, please consider changing your profession11 -
Hacktoberfest time, and I usually try to contribute by creating some trivial issues and labelling them as such - ones that I could fix in 2 seconds, just to help those starting out get a pull request and get used to how the process works. Like, we're talking *really* trivial - remove superfluous import statements, that sort of thing. In most of these I list exactly what needs to be changed.
This guy picks, what's probably the *easiest* of these tasks going, and then comes back saying he's got some questions. Dude, seriously?! It's right there in the damn issue description.
Whatever, I decide to be nice and I say he's welcome to ask. Brace myself for answering some stupid crap, but fine, we were all new once.
THE GUY COMES BACK AND SAYS HE NEEDS A CALL. A call, seriously? What is this crap? I do you a favour by letting you create a trivial PR, and you want me to literally burn my time & jump on a call to take you through step by step what to do?! Pff, and people wonder why I'm grumpy most of the time.11 -
What's the shittiest IT company you seen ?
I'll tell one i know - it had the shittiest web site I've ever seen, they built Android app that "enables users to pray to God" , a basic shitty app with pictures of Hindu gods and a button labelled "Perform e-pooja" Also the app description said "Share the app with friends and family" to receive free Gods blessing.
Really dude?! How low can you go?...have some basic ethics!
P.S: This company came to our institution with job offers and my teacher asked why i didn't attend their interview.
No thanks, I'd rather start as freelancer and work on building my own company than wasting my life in such retarded company.3 -
* A job application followup email I received:
Hi [programmerName],
Thank you for your interest in joining [companyName].
While we appreciate your application, we decided to move forward with other candidates whose skills and experience are a closer match to our requirements for this specific role.
Feel free to check back, as we are always adding new positions.
Best of luck with your career search!
-The [companyName] Team
* My (probably trashed) reply:
Hello
I personally ignore this precompiled stuff you HR people send.
I feel this answer will be probably trashed somewhere but I feel the need to write this.
You know absolutely nothing about my skills because you didn’t even talk with me.
Maybe I am not the best person in writing a resume or an introduction letter, the key skill appreciated in companies doing head hunting instead of building a solid corporate culture and cultivating talent. Or at least HR people in such companies.
Please consider that, maybe you didn’t like my resume or I didn't write a list of words matching your check list, but at least I honestly wrote my experience instead of trying to hack my way to a job interview writing a fake one that triggers usual HR patterns.
Consider that I do a job for a living and I don't live or have the time to make the perfect resume, I don’t even apply for all companies I see, I only apply for the ones I believe I can work well because I like them. I am not a professional job searcher, jumping from a company to another.
You keep posting this very same add since October 2019 and probably even earlier.
This sounds to me like:
- or your selection process does not work well and you end up hiring the wrong people
- or maybe your work place is not that good as you describe it, so that you have zero retainment despite your high salary.
But I cannot be sure because, guess what, I could not check personally.
If you want to talk about my skills and compare me to other people please test me otherwise don’t write (copy/paste) this offensive trash.
Best of luck with your career as a HR person in a tech company!
-A person tired of HR managers that do not give a f**k about the word “human” in their job description.13 -
OMFG I don't even know where to start..
Probably should start with last week (as this is the first time I had to deal with this problem directly)..
Also please note that all packages, procedure/function names, tables etc have fictional names, so every similarity between this story and reality is just a coincidence!!
Here it goes..
Lat week we implemented a new feature for the customer on production, everything was working fine.. After a day or two, the customer notices the audit logs are not complete aka missing user_id or have the wrong user_id inserted.
Hm.. ok.. I check logs (disk + database).. WTF, parameters are being sent in as they should, meaning they are there, so no idea what is with the missing ids.
OK, logs look fine, but I notice user_id have some weird values (I already memorized most frequent users and their ids). So I go check what is happening in the code, as the procedures/functions are called ok.
Wow, boy was I surprised.. many many times..
In the code, we actually check for user in this apps db or in case of using SSO (which we were) in the main db schema..
The user gets returned & logged ok, but that is it. Used only for authentication. When sending stuff to the db to log, old user Id is used, meaning that ofc userid was missing or wrong.
Anyhow, I fix that crap, take care of some other audit logs, so that proper user id was sent in. Test locally, cool. Works. Update customer's test servers. Works. Cool..
I still notice something off.. even though I fixed the audit_dbtable_2, audit_dbtable_1 still doesn't show proper user ids.. This was last week. I left it as is, as I had more urgent tasks waiting for me..
Anyhow, now it came the time for this fuckup to be fixed. Ok, I think to myself I can do this with a bit more hacking, but it leaves the original database and all other apps as is, so they won't break.
I crate another pck for api alone copy the calls, add user_id as param and from that on, I call other standard functions like usual, just leave out the user_id I am now explicitly sending with every call.
Ok this might work.
I prepare package, add user_id param to the calls.. great, time to test this code and my knowledge..
I made changes for api to incude the current user id (+ log it in the disk logs + audit_dbtable_1), test it, and check db..
Disk logs fine, debugging fine (user_id has proper value) but audit_dbtable_1 still userid = 0.
WTF?! I go check the code, where I forgot to include user id.. noup, it's all there. OK, I go check the logging, maybe I fucked up some parameters on db level. Nope, user is there in the friggin description ON THE SAME FUCKING TABLE!!
Just not in the column user_id...
WTF..Ok, cig break to let me think..
I come back and check the original auditing procedure on the db.. It is usually used/called with null as the user id. OK, I have replaced those with actual user ids I sent in the procedures/functions. Recheck every call!! TWICE!! Great.. no fuckups. Let's test it again!
OFC nothing changes, value in the db is still 0. WTF?! HOW!?
So I open the auditing pck, to look the insides of that bloody procedure.. WHAT THE ACTUAL FUCK?!
Instead of logging the p_user_sth_sth that is sent to that procedure, it just inserts the variable declared in the main package..
WHAT THE ACTUAL FUCK?! Did the 'new guy' made changes to this because he couldn't figure out what is wrong?! Nope, not him. I asked the CEO if he knows anything.. Noup.. I checked all customers dbs (different customers).. ALL HAD THIS HARDOCED IN!!! FORM THE FREAKING YEAR 2016!!! O.o
Unfuckin believable.. How did this ever work?!
Looks like at the begining, someone tried to implement this, but gave up mid implementation.. Decided it is enough to log current user id into BLABLA variable on some pck..
Which might have been ok 10+ years ago, but not today, not when you use connection pooling.. FFS!!
So yeah, I found easter eggs from years ago.. Almost went crazy when trying to figure out where I fucked this up. It was such a plan, simple, straight-forward solution to auditing..
If only the original procedure was working as it should.. bloddy hell!!8 -
I miss the good times when the web was lightweight and efficient.
I miss the times when essential website content was immediately delivered as HTML through the first HTTP request.
I miss the times when I could open a twitter URL and have the tweet text appear on screen in two seconds rather than a useless splash screen followed by some loading spinners.
I miss the times when I could open a YouTube watch page and see the title and description on screen in two seconds rather than in ten.
I miss the times when YouTube comments were readily loaded rather than only starting to load when I scroll down.
JavaScript was lightweight and used for its intended purpose, to enhance the experience by loading content at the page bottom and by allowing interaction such as posting comments without having to reload the entire page, for example.
Now pretty much all popular websites are bloated with heavy JavaScript. Your browser needs to walk through millions of bytes of JavaScript code just to show a tweet worth 200 bytes of text.
The watch page of YouTube (known as "polymer", used since 2017) loads more than eight megabytes of JavaScript last time I checked. In 2012, it was one to two hundred kilobytes of HTML and at most a few hundred kilobytes of JavaScript, mostly for the HTML5 player.
And if one little error dares to occur on a JavaScript-based page, you get a blank page of nothingness.
Sure, computers are more powerful than they used to be. But that does not mean we should deliberately make our new software and website slower and more bloated.
"Wirth's law is an adage on computer performance which states that software is getting slower more rapidly than hardware is becoming faster."
Source: https://en.wikipedia.org/wiki/...
A presentation by Jake Archibald from 2015, but more valid than ever: https://youtube.com/watch/...34 -
Best code performance incr. I made?
Many, many years ago our scaling strategy was to throw hardware at performance problems. Hardware consisted of dedicated web server and backing SQL server box, so each site instance had two servers (and data replication processes in place)
Two servers turned into 4, 4 to 8, 8 to around 16 (don't remember exactly what we ended up with). With Window's server and SQL Server licenses getting into the hundreds of thousands of dollars, the 'powers-that-be' were becoming very concerned with our IT budget. With our IT-VP and other web mgrs being hardware-centric, they simply shrugged and told the company that's just the way it is.
Taking it upon myself, started looking into utilizing web services, caching data (Microsoft's Velocity at the time), and a service that returned product data, the bottleneck for most of the performance issues. Description, price, simple stuff. Testing the scaling with our dev environment, single web server and single backing sql server, the service was able to handle 10x the traffic with much better performance.
Since the majority of the IT mgmt were hardware centric, they blew off the results saying my tests were contrived and my solution wouldn't work in 'the real world'. Not 100% wrong, I had no idea what would happen when real traffic would hit the site.
With our other hardware guys concerned the web hardware budget was tearing into everything else, they helped convince the 'powers-that-be' to give my idea a shot.
Fast forward a couple of months (lots of web code changes), early one morning we started slowly turning on the new framework (3 load balanced web service servers, 3 web servers, one sql server). 5 minutes...no issues, 10 minutes...no issues,an hour...everything is looking great. Then (A is a network admin)...
A: "Umm...guys...hardly any of the other web servers are being hit. The new servers are handling almost 100% of the traffic."
VP: "That can't be right. Something must be wrong with the load balancers. Rollback!"
A:"No, everything is fine. Load balancer is working and the performance spikes are coming from the old servers, not the new ones. Wow!, this is awesome!"
<Web manager 'Stacey'>
Stacey: "We probably still need to rollback. We'll need to do a full analysis to why the performance improved and apply it the current hardware setup."
A: "Page load times are now under 100 milliseconds from almost 3 seconds. Lets not rollback and see what happens."
Stacey:"I don't know, customers aren't used to such fast load times. They'll think something is wrong and go to a competitor. Rollback."
VP: "Agreed. We don't why this so fast. We'll need to replicate what is going on to the current architecture. Good try guys."
<later that day>
VP: "We've received hundreds of emails complementing us on the web site performance this morning and upset that the site suddenly slowed down again. CEO got wind of these emails and instructed us to move forward with the new framework."
After full implementation, we were able to scale back to only a few web servers and a single sql server, saving an initial $300,000 and a potential future savings of over $500,000. Budget analysis considering other factors, over the next 7 years, this would save the company over a million dollars.
At the semi-annual company wide meeting, our VP made a speech.
VP: "I'd like to thank everyone for this hard fought journey to get our web site up to industry standards for the benefit of our customers and stakeholders. Most of all, I'd like to thank Stacey for all her effort in designing and implementation of the scaling solution. Great job Stacy!"
<hands her a blank white envelope, hmmm...wonder what was in it?>
A few devs who sat in front of me turn around, network guys to the right, all look at me with puzzled looks with one mouth-ing "WTF?"9 -
I am sooooo very happy & grateful that my coworker wrote down this comment.. I'd have been lost without it! :/
-
Wow i must have been brain dead when i wrote this code. Needed to exclude certain elements from response for the the list of objects.
for (obj : objects) {
If (obj.skipFromResponse()) {
break
}
add obj to response
}
I used break instead of continue at the if condition which meant it would break out of the loop at the first instance of condition being met.
This went through qa and has been in production for 4 weeks so how did this not break before. Well little did i know the list of objects was sorted and all the test data, qa data and everything so far in production coincidentally only had the last element with matching condition. This meant it returned everything correctly so far.
Today was the first time there was a situation where this caused incorrect output. Luckily as soon as I heard the description of the issue I remembered to check the merged PR and hung my head in shame for making such trivial error. I must have written way more complicated code without any problem but this made me embarrassed to even admit. 🤦♂️4 -
I can't begin to express how utterly useless timestamps like "Today, about 15 minutes ago" or "Yesterday", or "Monday", or "Two Weeks Ago" are.
Those aren't times. Those are relative descriptions of times and are utterly useless.
If I don't know the current date for any number of reasons, such as when viewing a screenshot, it's a worse description than not having one at all.
Again, I am stymied by Apple's insistence to make everything that much less useful for literally no gain.7 -
The company I work for offered a Javascript Course/Training for every developer to enroll, which happens to take place on 3 days. In the description it was ensured to be for everyone, doesn't matter if you are an expert or beginner: there's something to learn for everyone.
The company described him as a top coacher in Austria and that he is overbooked for 2 years. High in demand indeed. "Has to be good", I thought. As a relatively average JS developer, there has to be something to learn for me.
Sitting here the second day, I fucking regret to join this shit. I have never seen such a bullshit in my lifetime. Why the fuck would you even book this man, he doesn't even understand basic concepts of software engineering. Just reading down the script, opening the script on one laptop and showcaseing it on the other. When someone asks a question, there's a 70% chance he doesn't know the answer. It takes this scumbag 30 fucking seconds to define a function; probably making spelling mistakes alongside.
I don't even want to know how much this dude will make from this "coaching". Hoped that it'd get better over time but I don't see an improvement. Contacting my boss that I'll leave this "training".7 -
!rant
So my pm gave me a task and estimated it to 6 days. I was like, well, thats a vacation for me isn't it :). I started it 3 days later and read the description... Get these api into this app..etc..mvp and all... so I worked on the views first. Later I found out that the api were totally incompatible, and no such data was found or COULD BE MADE for the app. that was day 1 :)
I kept publishing apks with empty views, nice empties If I do say so, and just said we have to wait for backend to make tokens and data. Vacation starts, (sorry boss if you're reading this :D)
On day 6, the PMs were just rushing up and down, contacting backend, back to me, then backend, office ping pong, (a lovely sight), til the senior SysAdmin said, its impossible. Of course I knew this, buuuut, who would miss such a lovely opportunity.
PS: to all PMs, keep on dreaming those impossible ideas :) -
Client: I need the push notification to have purple edges with blue background.
Me: I'm sorry. Apple does not have a support for such customization. What we can do is modify title, description and also add an overview image.
Client: No, you can make it purple edges with blue background. I saw it on dribble!
Me: *Logs out*.9 -
INTERVIEW. It tells everything about the company. I recently applied for a "big" company for the position of ML Engineer. The Job description was like "someone with good knowledge of visual recognition, deep learning, advanced ML stuff, etc." I thought great, I might be a good fit. A guy called me the next day. Introduced himself as a manager of the Data Science team with 8+ years of experience. Started the talk saying "it is just an informal intro". But things escalated very quickly. Started shooting Data Science questions. He was asking questions in a very bookish way. Tells me to recite formulas (like big formulas). When I explained to him a concept, he was not understanding anything. Wanted a very bookish answer. I quickly realized I know more about ML stuff than him (not a big deal) and he is arrogant as fuck (not accepting my answers). Plus, he has no knowledge about Deep Learning. At the very end, he tells me "man, you need to clear up your fundamentals". WTH??? My fundamentals. Okay, I am not Einstein or Hinton, but I know I was answering things correctly. I have read books and research papers and blogs and all. When I don't know about things, I tell straight away. I don't cook answers. So the "interview" ended. I searched that man on LinkedIn. Got to know he teaches college students Data Science and ML. For a fee of 50,000 INR. It's a big amount!! Considering the things he teaches. You can find the same stuff (with far higher quality) free of cost (on Coursera, Udacity, YouTube, free books, what not). He is a cheater. He is making fool of college students. That is why I sometimes hate "experience". 8+ years of exp and he is such an a**hole!! BTW, I thanked God for saving me from that company. Can't imagine such an arrogant boss.
TLDR: Be vigilant during interviews. It tells a lot about the company.4 -
There’s no such thing as quiet quitting. If working accordingly to the pay cheque and job description is called quiet quitting, why not calling
- every jobs are “quiet slaveries” .
- every banks charges are “quiet robberies”.
- every food I ate are “quiet shitting.”
- every gym rats are “quiet dieting.”
See? This doesn’t make any sense. Companies these days ….🤦♂️8 -
Facebook's algorithm is so bad that I can't believe that. In the past few days I marked ~20 posts from the same person with the same/similar content as "Hide post - see fewer posts like this". And now, not that I see fewer of these posts, they are literally throwing all such posts of that person to my feed. I know that I can unfollow this person but I don't want to. I just want to filter out these specific posts (they are all the same, some link, image of an old black and white photo and some description).5
-
How surprising is it when a person designs code in a very clear and impressive structure and just when you think about asking them for guidance, they reveal themselves to be complete turds?
I've been working with this person's "infra" code, at work. I've rewritten some classes to use their infra. I had a vague idea of how the classes work. I had no idea of how their code works. Expectedly, there were some issues but now only minor ones remain.
I asked them for a description of what I'm supposed to do for the few bugs I'm facing. They replied in such a condescending tone, it made me want to punch them through the screen.
Almost a month later, we're still going back and forth with emails. I've been swallowing it and responding calmly. I never got direct answers. Always deflections to irrelevant things or veiled insults. I took it because they did correct one silly error of mine that actually my code reviewer should've caught. (What's worse is that it got introduced by me just before my review and commit.)
But does that give them the right to insult me in front of the whole team including my project manager? I got a reply today from them with everyone of note in cc implying very clearly that I have not done any work. They highlighted a line from my code with some todo tag (that was not meant for them) to make their invalid point. A line that's unrelated to the bug I asked them about. This is after I proved them wrong when they insisted that I had done something wrong about a feature related to the bug.
If you don't understand what I asked for fucking ask me to ask again. But do not fucking try establish yourself on higher ground by pointing out irrelevant things in my code.
I was shocked and enraged that they'd do such a thing. I double checked everything like a mad man. Despite knowing that the fix has to come from them, I was instantly transported to the noob stage, grasping at straws. I wanted to send a really scathing reply right away but my manager asked me to wait.
My mind is now a see saw shifting between a panicked noob questioning every fucking thing I ever did in my nada life and a hungry enraged monster looking to maul that fucking shithead for burning me like that.1 -
I really need to vent. Devrant to the rescue! This is about being undervalued and mind-numbingly stupid tasks.
The story starts about a year ago. We inherited a project from another company. For some months it was "my" project. As our company was small, most projects had a "team" of one person. And while I missed having teammates - I love bouncing ideas around and doing and receiving code reviews! - all was good. Good project, good work, good customer. I'm not a junior anymore, I was managing just fine.
After those months the company hired a new senior software engineer, I guess in his forties. Nice and knowledgeable guy. Boss put him on "my" project and declared him the lead dev. Because seniority and because I was moved to a different project soon afterwards. Stupid office politics, I was actually a bad fit there, but details don't matter. What matters is I finally returned after about 3/4 of a year.
Only to find senior guy calling all the shots. Sure, I was gone, but still... Call with the customer? He does it. Discussion with our boss? Only him. Architecture, design, requirements engineering, any sort of intellectually challenging tasks? He doesn't even ask if we might share the work. We discuss *nothing* and while he agreed to code reviews, we're doing zero. I'm completely out of the loop and he doesn't even seem to consider getting me in.
But what really upsets me are the tasks he prepared for me. As he first described them they sounded somewhat interesting from a technical perspective. However, I found he had described them in such detail that a beginner student would be bored.
A description of the desired behaviour, so far so good. But also how to implement it, down to which classes to create. He even added a list of existing classes to get inspiration or copy code from. Basically no thinking required, only typing.
Well not quite, I did find something I needed to ask. Predictably he was busy. I was able to answer my question myself. He was, as it turns out, designing and implementing something actually interesting. Which he never had talked about with me. Out of the loop. Fuck.
Man, I'm fuming. I realize he's probably just ignorant. But I feel treated like his typing slave. Like he's not interested in my brain, only in my hands. I am *so* fucking close to assigning him the tasks back, and telling him since I wasn't involved in the thinking part, he can have his shitty typing part for himself, too. Fuck, what am I gonna do? I'd prefer some "malicious compliance" move but not coming up with ideas right now.5 -
SO MAD. Hands are shaking after dealing with this awful API for too long. I just sent this to a contact at JP Morgan Chase.
-------------------
Hello [X],
1. I'm having absolutely no luck logging in to this account to check the Order Abstraction service settings. I was able to log in once earlier this morning, but ever since I've received this frustratingly vague "We are currently unable to complete your request" error message (attached). I even switched IP's via a VPN, and was able to get as far as entering the below Identification Code until I got the same message. Has this account been blocked? Password incorrect? What's the issue?
2. I've been researching the Order Abstraction API for hours as well, attempting to defuddle this gem of an API call response:
error=1&message=Authentication+failure....processing+stopped
NOWHERE in the documentation (last updated 14 months ago) is there any reference to this^^ error or any sort of standardized error-handling description whatsoever - unless you count the detailed error codes outlined for the Hosted Payment responses, which this Order Abstraction service completely ignores. Finally, the HTTP response status code from the Abstraction API is "200 OK", signaling that everything is fine and dandy, which is incorrect. The error message indicates there should be a 400-level status code response, such as 401 Unauthorized, 403 Forbidden or at least 400 Bad Request.
Frankly, I am extremely frustrated and tired of working with poorly documented, poorly designed and poorly maintained developer services which fail to follow basic methodology standardized decades ago. Error messages should be clear and descriptive, including HTTP status codes and a parseable response - preferably JSON or XML.
-----
This whole piece of garbage is junk. If you're big enough to own a bank, you're big enough to provide useful error messages to the developers kind enough to attempt to work with you.2 -
It's been a while DevRant!
Straight back into it with a rant that no doubt many of us have experienced.
I've been in my current job for a year and a half & accepted the role on lower pay than I normally would as it's in my home town, and jobs in development are scarce.
My background is in Full Stack Development & have a wealth of AWS experience, secure SaaS stacks etc.
My current role is a PHP Systems Developer, a step down from a senior role I was in, but a much bigger company, closer to home, with seemingly a lot more career progression.
My job role/descriptions states the following as desired:
PHP, T-SQL, MySQL, HTML, CSS, JavaScript, Jquery, XML
I am also well versed in various JS frameworks, PHP Frameworks, JAVA, C# as well as other things such as:
Xamarin, Unity3D, Vue, React, Ionic, S3, Cognito, ECS, EBS, EC2, RDS, DynamoDB etc etc.
A couple of months in, I took on all of the external web sites/apps, which historically sit with our Marketing department.
This was all over the place, and I brought it into some sort of control. The previous marketing developer hadn't left and AWS access key, so our GitLabs instance was buggered... that's one example of many many many that I had to work out and piece together, above and beyond my job role.
Done with a smile.
Did a handover to the new Marketing Dev, who still avoid certain work, meaning it gets put onto me. I have had a many a conversation with my line manager about how this is above and beyond what I was hired for and he agrees.
For the last 9 months, I have been working on a JAVA application with ML on the back end, completely separate from what the colleagues in my team do daily (tickets, reports, BI, MI etc.) and in a multi-threaded languages doing much more complicated work.
This is a prototype, been in development for 2 years before I go my hands on it. I needed to redo the entire UI, as well as add in soo many new features it was untrue (in 2 years there was no proper requirements gathering).
I was tasked initially with optimising the original code which utilised a single model & controller :o then after the first discussion with the product owner, it was clear they wanted a lot more features adding in, and that no requirement gathering had every been done effectively.
Throughout the last 9 month, arbitrary deadlines have been set, and I have pulled out all the stops, often doing work in my own time without compensation to meet deadlines set by our director (who is under the C-Suite, CEO, CTO etc.)
During this time, it became apparent that they want to take this product to market, and make it as a SaaS solution, so, given my experience, I was excited for this, and have developed quite a robust but high level view of the infrastructure we need, the Lambda / serverless functions/services we would want to set up, how we would use an API gateway and Cognito with custom claims etc etc etc.
Tomorrow, I go to London to speak with a major cloud company (one of the big ones) to discuss potential approaches & ways to stream the data we require etc.
I love this type of work, however, it is 100% so far above my current job role, and the current level (junior/mid level PHP dev at best) of pay we are given is no where near suitable for what I am doing, and have been doing for all this time, proven, consistent work.
Every conversation I have had with my line manager he tells me how I'm his best employee and how he doesn't want to lose me, and how I am worth the pay rise, (carrot dangling maybe?).
Generally I do believe him, as I too have lived in the culture of this company and there is ALOT of technical debt. Especially so with our Director who has no technical background at all.
Appraisal/review time comes around, I put in a request for a pay rise, along with market rates, lots of details, rates sources from multiple places.
As well that, I also had a job offer, and I rejected it despite it being on a lot more money for the same role as my job description (I rejected due to certain things that didn't sit well with me during the interview).
I used this in my review, and stated I had already rejected it as this is where I want to be, but wanted to use this offer as part of my research for market rates for the role I am employed to do, not the one I am doing.
My pay rise, which was only a small one really (5k, we bring in millions) to bring me in line with what is more suitable for my skills in the job I was employed to do alone.
This was rejected due to a period of sickness, despite, having made up ALL that time without compensation as mentioned.
I'm now unsure what to do, as this was rejected by my director, after my line manager agreed it, before it got to the COO etc.
Even though he sits behind me, sees all the work I put in, creates the arbitrary deadlines that I do work without compensation for, because I was sick, I'm not allowed a pay rise (doctors notes etc supplied).
What would you do in this situation?4 -
So I'm studying at a university where everyone who studies electronics has to do the same "internship" where we have to program some microcontroller.
For most of us it is the first time programming with pointers and working with the register (C++). But the institute who does this shitty internship manages to FUCK up the class description and even the classes and methods they give you.
In the class description there are methods missing so you have no idea what they want you to do with that method and then they write stuff in the class description that aren't in the class and you don't need. For fucks sake how can you fuck up such a simple task.
And then their shitty template is wrong. If you expect your students to do well please for fucks sake make sure you give your students the correct classes and descriptions. Many students won't fucking know what is wrong because the never programmed in C++. The best part is that they are doing this "internship" for more than 5 years.5 -
I couldn't easily find it again and I didn't screenshot it yesterday. But this is not made up.
Yesterday I found a Sponsored post on Facebook about a class for one of WordPress premium theme with visual builder. Well it's more like a workshop rather than a class.
The description said if you want to have stable income, want to work from home, want to experience a *real developer life*, etc etc.
REAL DEVELOPER LIFE. No kidding.
I do WordPress websites. Yes I use premium themes. Yes I do visual builder. Fuck but I don't call that work real dev work and I'm not proud of those projects as real dev works.
In the end, the hungrier guy gets the bread. I guess. I haven't thought of providing such courses at all.
PS : the mentioned theme is Divi from Elegantthemes. -
Idk why but it feels like lately i've such a pessimist approach to any new-tech (barring languages)
Any new framework or wrapper or CI/CD handler and without even seeing beyond description my instinct goes "fuccccccccck this, I hate it, it'll break things"
I wonder if theres a way to fix this mindset T__T or am I just getting old idkkk6 -
I have an internal perception of myself. It isn't an image like a memory is, and it's not a description such as a sentence, but it's purely a feeling. I feel it in the core of my soul, not my body. And when I listen to Minecraft volume Alpha, it transforms my internal perception for the duration of album and the feeling lingers afterwards.
By now I must have a year of in game time and hearing those sounds and seeing the old textures brings be back to the days of middle school playing Minecraft Pocket Edition Lite on my first phone.
I wasn't happier back then. I'm just as happy today as I was back then. But restoring my inner self to that time, just briefly, is wonderful.
I'm thankful to Minecraft for being a great game. It has seen many changes in it's public perception. In the beginning, it was for all ages. Deadmau5 played it, notch developed it. It was a different beast. Then, without the content of the game changing at all, it became a child's game. Then it became a child's game that PewDiePie played and it was acceptable to play without any shame again. And now, once again, it is on a downward slope to being a child's game.
No matter what the shifting sands of public view on the game is, I will always hold this game close to my heart and I will continue to play it whether it's socially acceptable or not. If for nothing else than to remind my soul of a simpler time.1 -
So I created a little script for my mother because otherwise she had to combine 70 spreadsheets manually, I just couldnt sit there and do nothing. So I wrote a simple Python script in like 30 mins, decided that it needed a GUI because in the end it is for my mother. So wrote a GUI and partly learnt PyQt during that in an hour, which was all working fine.
Then I got to the point where I actually had to hand it over to my mother, preferably as an executable so that there is no hassle at all. So found this tool, Pyinstaller which seems to work great. Created an executable with all the dependencies and stuff in a single file, it worked on my win10 machine (because I developed on Linux of course). So I distributed it to her and she immediately gets an error. Of course there is no description and stuff because I made it a simple program, no log files and such. But fortunately she told me that it errorred when she wanted to run it, so I knew it had to be due to the executable.
Turns out she is still using windows 7 at work, which of course is different that windows 10 and here I am at 11pm, installing updates on a fresh windows 7 machine just to create a new build in that environment and make it work on her machine.
Fuck you, windows update. I swore to never see that ugly ass progress bar again, but yet here I am. Send halp.
I am almost just at the point where Im going to teach my mother how to run a python application from the command line because wheels are actually available for all python dependencies (instead of compiling them)!
Are there better python executable creators out there for wincrap?3 -
Since gitkraken is turning into such a bitch, I've searched for alternatives once again, as usual none of the competitors still implemented a fraction of it, after so much time.
Sublime Merge looked promising, but then half the time fucks the history graph, fails to remove remotes and more funny stuff I don't want to mess with.
Github Desktop I didn't even try because it didn't seem to have any proper history graph to begin with.
For now ended up on sourcetree, though I really do miss having commit message and description be two separate inputs, have done the most basic merge for now, so it's a to be continued experience.
Mostly afraid of how it'll show merge conflicts and commit view, as from what I gathered it doesn't fullscreen when you click a commit, but instead shows an awkward small screen at the bottom of the graph split further in half with the avatar and commit message.
Edit: oh for fucks sake, just noticed it doesn't even have linux support, god damn it.24 -
DR-4798: Have notifications be marked as read only when clicked on instead of after seeing content
Priority: Should Fix
Type: Story
Description:
**Background**
Some users are reporting that they are not seeing all of their notifications because one notification marks all other notifications as read. This is because users mostly focus on the notification tapped on and then return to the notification screen. But other notifications such as mentions may reside on the same page and thus marks notification as read leaving users to miss out on possible important responses, etc.
Let’s change the way we mark notifications as read by only marking them as read once clicked on not seen.2 -
Ticket: here's something wrong with the export of transactions, please check.
Very useful description, let me just go over this logic I've written months ago.
Yeah, I went extra sure that everything's right, besides the ones for created during the initial testing that we left. Took me a hell a long time to prove because there's such a vague description but ok.
Of course I have the time to make an eyecandy of an excel spreadsheet for you.
Only for you I'll also go and fix these entries manually. If you want me to do it so badly, I'll gladly do it.
Oh what, you're upset that I wasted 5h for this complete bullshit? Well fucking go and learn the database structure yourself then or get sued idk
Hope it was worth that 1€ difference the customer paid himself.
Not to mention that I also had to do an emergency setup to work from home because those people who are responsible for giving me an appointment for a covid test sure like to wait days after my sick leave is over. ffs, I just had a cold...
Also fuck all this bullshit mac software required to work in this network, half of this shit flat out requires you to use the same software and ofc it's all closed source to the point where I'd be glad to have an electron app for everything. -
1/2 dev and a fair warning: do not go into the comments.
You're going anyway? Good.
I began trying to figure out how to use stable diffusion out of boredom. Couldn't do shit at first, but after messing around for a few days I'm starting to get the hang of it.
Writing long prompts gets tiresome, though. Think I can build myself a tool to help with this. Nothing fancy. A local database to hold trees of tokens, associate each tree to an ID, like say <class 'path'> or some such. Essentially, you use this to save a description of any size.
The rest is textual substitution, which is trivial in devil-speak. Off the top of my head:
my $RE=qr{\< (?<class> [^\s]+) \s+ ' (?<path>) [^'] '\>}x;
And then? match |> fetch(validate) |> replace, recurse. Say:
while ($in =~ $RE) {
my $tree=db->fetch $+{class},$+{path};
$in=~ s[$RE][$tree];
};
Is that it? As far the substitution goes, then yeah, more or less. We have to check that a tree's definition does not recurse for this to work though, but I would do that __before__ dumping the tree to disk, not after.
There is most likely an upper limit to how much abstraction can be achieved this way, one can only get so specific before the algorithm starts tripping balls I reckon, the point here is just reaching that limit sooner.
So pasting lists of tokens, in a nutshell. Not a novel idea. I'd just be making it easier for myself. I'd rather reference things by name, and I'd rather not define what a name means more than once. So if I've already detailed what a Nazgul is, for instance, then I'd like to reuse it. Copy, paste, good times.
Do promise to slay me in combat should you ever catch me using the term "prompt engineering" unironically, what a stupid fucking joke.
Anyway, the other half, so !dev and I repeat the warning, just out of courtesy. I don't think it needs to be here, as this is all fairly mild imagery, but just in case.
I felt disappointed that a cursed image would scare me when I've seen far worse shit. So I began experimenting, seeing if I could replicate the result. No luck yet, but I think we're getting somewhere.
Our mission is clearly the bronwning of pants, that much is clear. But how do we come to understand fear? I don't know. "Scaring" seems fairly subjective.
But I fear what I know to be real,
And I believe my own two eyes.11 -
How resource calculations for software services like code analysis, monitoring, etc are done:
Opening fridge, putting all the beer one can find in it.
Opening the necessary tools, e.g Excel, Accounting software, ....
Drinking the first beer.
Starting to aggregate the monthly costs - cause you can never trust the reports written by someone else...
First beer poof.
Looking at the monthly cost, adding columns "Intended use", "Actual usage pattern", "Usage factor"...
Opening next beer...
Usage factor is btw a factor of 0.1 ... 1.0 - to give an estimate how much the products feature are actually used, for further analysis if the invest is justified or not...
Oh. Another half bottle gone...
Filling in the columns...
Oh. Bottle empty and the next one toooooooooooooooo...
*burping*
*cracking finger joints*
Now let's get to the sad part...
Next worksheet, adding infrastructure costs...
Cost and description as columns.
Hehe. Column sounds like gollum.
Another beer...
Ugh. Need the paper reports, manually typing off things for stuff that was e.g. tax deductible.
Many beers die during this task. Poor little beers, dying for such an boring and mundane task...
SUM is a real useful function. I don't think I can add numbers anymore.
Now we can add another sheet.
Hehe. Sheet sounds like shit. And yes, everything in this file is shit.
Summing up costs from both sheets and including the cost factor from 1
... Beeeeeeeer Beeeeer beer we need more beer here... Beer beer beer...
Where was I. Oh yeah. Cost factorization total vs effective.
Why do I want to get even more drunk.
Oh yeah. Most software is completely underused and the costs aren't justified.
Let's add some colored highlighting ...
Uuuuh. ,Too much red. Better change the highlights.
Too much red.
More beer.
Don't give a fuck.
Hm.
Time for some whiskey.
What else is there to do....
Oh yeah.
Diagrams.
The bloody wankers from accounting need diagrams as numbers are too boring.
Not that everything in accounting is boring, no matter how much you paint colors on it... *sigh*
Hm. More whiskey...
Hehe. Whiskey rhymes with frisky.
Uff. Now just need to write mail. Mail mail mail....
"Copy paste the last mail from last month"
Hm.
Ah.
*sipping whiskey*
Spell check extension - to the rescue.
Thesaurus *burps*.
Let's change a few words here and there... Maybe another paragraph there.
Uh....
Trying to attach file...
*fucking mouse is pretty constantly crashing into empty beer bottles*
Done.
Damn.
Need to press send button.
*Creating mess on the desk by just randomly crashing the beer bottles*
Done.
*Pressing computers power button*
Mwahahahaha. No mouse needed.
*regretting to stand up too quickly, nearly barfing on the floor*
Couch ... Where Couch...
After hitting several doors, frames and other stuff, the glorious mission ended successfully with a most graciously executed gut buster on the couch.
(Regretting next morning to have emptied two 6 packs and a few glasses of whiskey) -
There is so much confusion in the world of programming right now, at least for me. I bet there’s only so many concepts going on and that these concepts are realized in certain ways. E.g. programming following certain paradigms and practices, also different workflows, containerization, agile, devops etc.
When searching for tutorials in different subjects it’s horribly aggravating to learn to use the tools. Not because they are inherently hard or bad in any way. There’s just so many different tutorials, some badly given, some that are great but which bring up to many foundations you already know so you find yourself getting bored to the point that you just stop listening. Many tools are used for so many use cases, sometimes overlapping each other, they use concepts to that you’ve heard hundreds of times before. Many times they want to do things in a special way so even if the concepts are the same you still need to fucking listen to the same old thing while learning how to write a command a slightly different way or how some tool is supposedly better than another.
I’m realizing that what I’m so sick of is the lack of TLDR information about new tools with some short description of how to use. Where you didn’t have to re-hear stuff you already knew or had heard so many times unless for a very good purpose, such as to show exactly how it’s done differently than another relevant tool. In a dream world the TLDR information could also remember my skills and remove the parts I didn’t need to know about any new tool.6 -
I really hate working with learning management systems (LMS).
I make training simulations for retail companies and some of these have the worst, backwards LMS's out there.
The providers who install and manage these LMSs for the companies always insist we make our training run inside their own environment, but we can't since it's a 3D training made in Unity that doesn't run well in a browser.
Luckily some of these are fine to figure out. Just a few API calls here and there for authorization and reporting progress, but some are an absolute nightmare.
Just now one of the providers provided me with a 2000 page documentation of all the functions of the LMS's API that our customer is using. All I need are like 5 pages that explain what URL to call with what data and the responses, but now I'm stuck spending days trying to find the 0.5% of this documentation that I need to communicate with their API.
And of course, the documentation is vague as all hell. minimal descriptions of what each endpoint does. Subjects names are super vague, as in do I look for course progress or lesson completion state. What the heck is a Learning Event, is it relevant to me?
And the errors in this document, too.
Bullet-point lists with duplicate items.
language errors everywhere.
Property lists where they copy-pasted the description of properties.
An entire EMPTY chapter, literally a page with only the chapter's title.
I just can't stand how these providers barely seem to know anything about the API of the LMS's they provide to customers.
(for clarity, the LMS is produced by some big tech company, it's installed and maintained by some 3rd party which is our main line of communication when rolling out trainings to these).
It always goes like: "Hey, we want to use your training." "Oh, that's great, we have our own, simple LMS where you can view your employee's progress." "Nah, we want to use our backwards LMS. Here's a giant manual about it's API, go figure it out!"
And then I'm left here tearing my hair out trying to figure out which 3 calls I need to send their API from the tons of extra stuff it can do which is completely unnecessary and being unable to rely on the provider because they lack the knowledge and have such thick skulls about the implementation of the LMS itself that they also seems completely unwilling to help to begin with!
Just another day at the office. -
1) Have a plan for what's going to be talked about (and what will not be mentioned)
2) Could this meeting be an email or done async? Then don't schedule a meeting
3) Send out the calendar invite at least 72 hours before. Include details in the title and description, such as join link and if video will be on or not
4) Join 5 mins early to ensure everything is working
5) Start the meeting right on time, no matter who isn't there
6) If someone joins late, don't recap what's been mentioned
7) End on time, the time that was set when the calendar invite was sent, ending early is also fine
8) At the end say thanks, and know who will send out the notes which include tasks mentioned and the deadline. As well as who to contact if have any questions
9) If a select portion of the meeting attendes is going to have another meeting regarding this, then meet elsewhere
10) Actually send those notes before the end of day -
i can't explain why, but hearing the term 'zeroth' in english really fucks with my head.
like, yeah, i'm quite used to 0-based indexing in my line of work obviously. but stuffs[0] == "the first element of stuffs" and that's what I would say when communicating verbally to the person looking at the code with me.
but like, take a use case where you are actually referring to something that precedes the first in a series, such as the number of updates on an original thing. then zeroth is indeed an accurate description, but still just rings such discord in my ear upon hearing it.
kinda like they say about 'moist' describing anything but a cake.8 -
Just sat the shittiest exam of my life yesterday. It involved among other things: TDD with java (on paper), critiquing and rewriting gherkin scenarios, and diagnosing problems with agile teams based on a limited description. I was short for time at the end and chose not to answer some questions because it would tire my hand too much to attempt them, and it's time consuming af to edit stuff you wrote down.
Many other exams are switching to online tests, and this one really could have benefited from that given the sheer volume of crap I had to write down.
I'm basically hoping to God that I didn't fail this thing, but the lowest exam grade I've had so far is 70 so it would be crazy if I did. Still, fuck these people for writing such a difficult exam. -
Database operation wordpress plugin
Project Type
Open source project
Summary
Add more feature to the existing plugin features
Description
Completed the first revision for this Wordpress database plugin with little features such as querying and displaying wordpress database tables, I would like more elaborate and streamlined features to add to the stack, some ideas are recorded as issues on the github link below.
Tech Stack
wordpress API, PHP, HTML, CSS, JS
Current Team Size
1
URL
https://github.com/devDeji/...5