5 ms·
I’m a senior developer and I’ve trained a few junior developers over the years. Here’s the technologies/skills you will likely be expected to know in 2021: Bac
by poletopole 6y ago
I’m a senior developer and I’ve trained a few junior developers over the years. Here’s the technologies/skills you will likely be expected to know in 2021:
Backend:
1. PHP 8, Composer, with some framework such as Laravel.
2. SQL with some relational DB such as MySQL.
3. Unix shell scripting (Bash).
4. Docker and Linux familiarity.
5. General knowledge of AWS services.
6. Either Apache or Ngnix.
7. JSON, XML, YAML.
8. Some PHP unit testing framework.
9. Git
Frontend:
1. ECMAScript 7 and probably Typescript.
2. Vanilla JS/DOM API.
3. Node.js and a toolchain like Webpack.
4. CSS3 and HTML5 and probably SCSS.
5. React and friends.
6. JQuery and friends.
7. Framework such as Bootstrap (but there many others).
8. Unit testing framework such as Cypress.
Networking:
1. HTTPS 3 (RESTful).
2. TCP/IP.
3. DNS.
4. SMTP.
5. FTP.
6. SSH.
A general knowledge of the field of networking will help but you don’t have to be an expert, just take a networking course on Udemy.
Security:
1. SSL certificates.
2. OAuth.
3. OpenSSL and RSA key generation.
4. Linux hardening such as firewall configuration.
5. JWT.
A general knowledge of things like hashing and salting passwords, encrypting cookies and not storing API keys in the codebase, and a knowledge of common hacks in the field is expected.
If you don’t have any experience then build some small service and do a few github projects. Personally I would limit your job search to Craigslist since employers have lower standards there.
One trick that got my foot in the door was I took a data entry job and after a month or two I automated my job away (which only took a weekend to do) and listed that job as a software role.
- aprdm 6y agoI think to know all of that is a bit of a stretch. This same exact list could be used for a mid or a senior level. As a junior I would expect you to be roughly aware of some of those topics. Certainly knowing AWS, SSL, JWT, firewalls, FTP, SMTP, HTTPS3 are not necessary for a junior role. For juniors I am much more interested in seeing how eager they're to learn, what they've built and what excites them. In fact, I've hired people who didn't knew python, linux or git working as a backend developer in a python/linux/git shop and it worked pretty well. (He was a Windows DBA interested in moving to programming)
- poletopole 6y agoIt’s a ridiculous but earnest list. I guess it depends on the company, but these days many if not most companies expect junior developers to have senior level knowledge and pay them junior level salaries. Having said that, I didn’t know JQuery when I got hired and learned it a week or two. So yes, the most important quality is you can learn quick on the job.
- the__alchemist 6y agoDo you think that list might be too long, as "expected to know"? Feels like "No true Scotsman".
- poletopole 6y agoI guess HN is taking what I listed that way, ha. I really just meant that things have changed since the old days. This list is just an outline, certainly not all of the skills are required.
- the__alchemist 6y agoGot it - I misinterpreted.
- snoozypants 6y agoDamn, I guess I'm not even a junior dev then lol.
- poletopole 6y agoI know, really. Many of these bullet points even I learned after becoming a junior developer. I was just reflecting on my experience training junior developers this past year and assuming we’re talking about fullstack PHP devs, most if not all of these items were skills (to lesser or greater extent) were required to be proficient at my workplace. I wish it wasn’t this way but can’t you agree that compared to 2010 that becoming a junior dev has become harder.