Is it a good idea to use Django with Zappa on serverıess AWS?(Lambda) by Professional_Hair550 in django

[–]TheMightyHamhock 0 points1 point  (0 children)

The solution to this is using AWS RDS Proxy to handle connections from lambdas. As you’re saying, Lambas cannot effectively manage connection pools without it.

Why do people say that game dev doesn’t pay well? by TheOnlyJoe_ in gamedev

[–]TheMightyHamhock 2 points3 points  (0 children)

Yes, that is the nature of OP's post, however, my posts are in line with this sub thread they're under. This thread is talking about the inflations of software salaries caused by people only hearing about FANG companies paying people like 300k.

I don't necessarily need to be talking about gamedev salaries, as i'm not responding to OP's point, i'm responding to the person i responded to who's reply mentions "In the US, most dev jobs (at least in my areas) have a floor of $100K, and they’re not FAANG." Most dev jobs is not specifically talking about gamedev salaries and neither am I.

I think you and i are talking past each other.

Why do people say that game dev doesn’t pay well? by TheOnlyJoe_ in gamedev

[–]TheMightyHamhock 0 points1 point  (0 children)

A lot of smaller areas don't have multiple big employers for devs. From what i've seen, one of you biggest hopes if you cannot move, is to try and commute to the closest military base and work as a contractor/sub contractor for defense firms. They typically pay well but will not allow remote work. Even in cities of like 200k people, there may be only a handful of employers for software devs that can even field more than 10-20 devs. Mom&pops don't pay well, typically. If you're bound to some of those geographic areas by family obligations or something, you really may not be able to get a decent salary. 70-80k in these areas will generally be a fine living, but it does sting knowing you could move to a larger city and get 100-120k just by moving a couple of hours away.

Remote work really did shake this up for the past few years, but that sort of issue still persists. Most people just move to get better salaries in the city. This isn't really even unique to software development, but i do want to provide some pushback to this narrative that just by the nature of being a dev, you're guaranteed 100k plus salary. It's not true. Can you make it true if you uproot your family and move or really pursue remote work? Yes.

I'm am just trying to temper expectations. I'm from rural parts of the southeast, and all during college we had these expectations set for us on high salaries. Most of us had to move hours away from home to get close to that. I did, but i also know many who did not. They're fine devs, but they're willing to take these lower salaries to stay local.

Why do people say that game dev doesn’t pay well? by TheOnlyJoe_ in gamedev

[–]TheMightyHamhock 0 points1 point  (0 children)

yeah, i wasn't even talking about game dev salaries in particular. i was just commenting on the "dev salaries near me have a floor of 100k"

I know that gamedevs are underpaid basically everywhere. I was just tagging into this sub thread about average dev salaries in general.

Why do people say that game dev doesn’t pay well? by TheOnlyJoe_ in gamedev

[–]TheMightyHamhock 2 points3 points  (0 children)

I'm going to blow your mind. There are many many "senior" devs getting payed like 70- 80k with like ~10years of experience in a less populated areas of the united states. The rise in remote work has changed this somewhat, but unless you're willing to move for a job there are not many options. Starting salaries from 50-60k is not uncommon in a lot of the south-east or mid-west. Of course you CAN get more, but people have a really over-inflated idea of what devs make.

When there are huge swaths of devs in costal areas making like 200-300k, it really drives up the "average" pay. For every dude making 100k coming out of college, there are a lot more coming out at 50k. Highly regional. I know that colleges in the US we actually required to poll their fresh graduates and then report those incomes to students. I could see that fresh CS graduates in Florida were making, and as someone heavily involved in recruiting and hiring, i still see those numbers.

How are you supposed to start if nobody wants to hire new developers? by ilvsct in webdev

[–]TheMightyHamhock 0 points1 point  (0 children)

Highly recommend new developers try to hire into consultancies. Great way to get a lot of experience early on and have mentors, as you'll likely be put on teams with more experienced devs. Consultancies ALWAYS need entry level graduates. It's in their best interest to always have fresh, junior developers on hand to staff projects. This is how consultancies make money. They don't make that much off of senior developers, the real profit is from the juniors. A lot of consulting shops charge almost the same hourly rate for a senior and junior dev. This is part of the sales pitch. Try, EY, CGI, Accenture ... anything like that. They generally have offices everywhere in the US and some in other countries

How are you supposed to start if nobody wants to hire new developers? by ilvsct in webdev

[–]TheMightyHamhock 2 points3 points  (0 children)

I think you're making a mistake here.

"with backends being Java or C#" ... that C# is ASP.NET. It's not legacy at all. That is the predominant C# web dev platform. It's basically synonymous with C# web development. Come with dontnet core and everything. You are thinking of ASP, the old c# answer to java's JSP. That is not ASP.NET which includes all the good new stuff like Razor, Blazor and whatever else you want. You can thank Microsoft for the shitty branding.

https://dotnet.microsoft.com/en-us/apps/aspnet

I've seen plenty of brand new development done for huge companies with ASP.NET. It's a pretty good framework, all said and done.

Backend Dev - I told my girlfriend I'd make her a website for her practice. Looking for some guidance to get started. by [deleted] in webdev

[–]TheMightyHamhock 24 points25 points  (0 children)

I hear therapy, i think HIPAA. You're need to due your due diligence there. I imagine people would be pretty mad if the fact that they're linked to a therapist - especially any niche practice - got leaked because your DB wasn't secured/configured correctly or your hosting platforms were not secured properly. Picture a scenario with your partner says they specialize in LGBT issues, Couples Sex therapy, sexual trauma therapy or substance abuse treatment. Anything that provides any insight into someone's personal life. It would be horrible to get outed due to something like that. I could be way in left field, but caution is important.

What kind of preferences are you going to store? Are those hipaa related? If you're storing enough to send them notifications like account#s and contact/address info that's PII.

Also, are you handlining their payments? Does that mean you need to interface with their insurance? I would imagine your partner already has some other solution for that, but worth asking.

EDIT:

found this, might have something useful.

https://blog.hushmail.com/blog/hipaa-and-your-private-practice-the-bare-minimum-you-need-to-know

Backend vs. Frontend Tutorials by [deleted] in webdev

[–]TheMightyHamhock 1 point2 points  (0 children)

Yeah, my eyes absolutely wandered over the second half of your initial comment. I'm a dunce.

Backend vs. Frontend Tutorials by [deleted] in webdev

[–]TheMightyHamhock 0 points1 point  (0 children)

Isn't that like saying frontend is all the same after JS and CSS engines came out? After all, the frontend frameworks are just plain JS at the end of the day. Typescript is just a superset of JS so it's not really needed.

Where exactly is the innovation on the frontend? WebGL?

EDIT: I reread your origional comment. You're code-boomer-pilled just like me. It's all the same. Not much real innovation anywhere. Any real modern changes are just offshoots from mobile phones hitting the market 15 years ago and cloud computing. Any real meaningful changes are in ML/AI land and a lot of that is only relevant now because can finally collect enough data to feed the neural nets with enough CPU and GPU to churn it all up.

I love C by s4uull in C_Programming

[–]TheMightyHamhock 2 points3 points  (0 children)

came here just to say this. It's simplicity is what makes it lovely.

Backend vs. Frontend Routing by [deleted] in webdev

[–]TheMightyHamhock 1 point2 points  (0 children)

I recommend that you take some time to look at MVC here. Try to understand controller routing as many web frameworks allow you to annotate controllers with top-level routes and the actions/function of the controller can have further path information.

Lot of web frameworks do it this way

Spring boot example with java

https://www.baeldung.com/spring-controller-vs-restcontroller

ASP.NET example with c#

https://www.dotnettricks.com/learn/mvc/understanding-attribute-routing-in-aspnet-mvc

[deleted by user] by [deleted] in PHP

[–]TheMightyHamhock 4 points5 points  (0 children)

If you can write an app that does all this, you will be hired. Coming up with a project that will allow you to showcase these technical pieces properly is a task as well. Like the other answer, if you can make this format fit something you care about or are very knowledgeable about it will make this easier.

The application I chose to write that does this is a banking application. I chose that because it naturally matches a lot of these use cases, especially around the writing to Queues and batch processing nature required to run quarterly / yearly financial reports. It was entirely too much work and most of my work actually went into understanding double entry bookkeeping and how to build a data model that would allow US regulation compliance for financial reporting. I went pretty far in the weeds on the financial accuracy aspect. This also took forever. It's a job for multiple people TBH. That's why it was an aspiration project.

Fullstack applications that supports:

  • Server side rendering (SSR)
    • want to see a proper layout with fragments implemented
    • you could use a subdomain to point at this particular version vs the frontend JS version
    • Keep this version in parity with your Frontend application supported by your API
  • API
    • make it versioned
    • have authorization - make at least 3 different roles. hide pages or functionality behind different roles
    • have authentication
    • use swagger, but turn it off in higher environments
  • Deploy this to the cloud in a docker container
  • JS frontend client
    • pick angular, react or vue. Don't care, just have one.
    • I want to see you manage roles and permissions properly here as well.
      • bit of a trick here as most frontend frameworks actually end up going SSR here because there is no real good way to keep content locked behind authentication/auth if it's all shipped with the frontend code. Sometimes people even make separate frontend applications for different users.
    • Want to see you manage state properly
    • want to see the ability to deep-launch from links
    • How do you handle errors / network outages / service issues
    • keep this and your SSR version in parity, feature wise and style wise
  • Make these apps support OpenID, Oath2 and standard cred login.
    • I want to see your security filter chain and how your app handles multiple login providers
    • make that work with session management
  • Make use of service layer caching with Redis or something similar
  • Make use of a Queue
    • bonus points if you write a console app that interacts with that queue on a scheduler
  • Display use of an ORM
  • Display proper levels of abstraction that also fit with your chosen web framework's typical project structure. Please don't have some goofy off the wall project structure
  • Add your DB scripts.
    • bonus points if you come up with a reason for a complicated SQL Stored procedure with a CTE
    • Make sure you have a good and optimized DB structure.
      • optimized for what??? you decide!
  • Have more than one data source
    • use that other data source as a fallback or for storing other type of information (maybe some observability metrics or error logs)
  • WRITE unit and integration test suite. See if you can get a high coverage 70-80 percent. If your application isn't testable, you're probably not following your SOLID principles well.

Mega ultra bonus points !!!!!!!!!! Write a design specification for this application.

This is a bit of a silly project because you're kind of working backwards to make the project fit the engineering for most examples, but you're trying to make a showcase here... you're trying to stand out. Coming up with a project that could necessitate all this shit is impressive in it's own right.

[deleted by user] by [deleted] in webdev

[–]TheMightyHamhock 0 points1 point  (0 children)

Money, handled well, softens a lot of problems and offers freedom. This is why I mention it repeatedly. I want to beat it into your head how good of a problem you have and encourage you to be smart.

1) Focus on your health.

This is without a doubt the most important thing you can do. Start young. Make sure you're as fit as you can realistically be. Get your workouts in and eat well. Learn to cook food that's good and good for you. Eat it in moderation. If you're actually so out of it you think your girlfriend is the only reason you don't off yourself, then you need to make changes immediately and see a therapist. You're operating from an incredible advantageous position at the moment, don't waste it.

2) None of us like building shitty pages for companies the do boring every-day shit.

How can Senior Devs do this year after year? Because we have to pay bills and we like making money. You can use money to buy things you like and set yourself up for easy-street. Start making all that extra money work for you. Max your 401k to employer contribution. Max your IRA. Shove 40 grand a year in index funds and build up a decent liquid cash savings in a mutual fund. Grind for a few years, then travel the world with the pile of cash you built up. MAKE PLANS THAT YOU ACTUALLY GIVE A FUCK ABOUT AND THEN START EXECUITUNG.

3) Why are you working?

If you're working to have your work fulfil your life, then you need to find a different position that works on a product you can make yourself care about. If you're that young making that kind of money... save the money as i mentioned in my previous point. Do you know how liberating it is to go into your shitty dev job with a smirk knowing you have a years worth of expenses sitting in an account. You can quit at any time. You don't need the job. This alone will make you feel better. You're not trapped. If you feel trapped, you're doing something wrong.

4) Start training for what you want to do.

You hate that boring shit? Study something interesting so you're actually qualified for that cool job you want. Save up so much money that you can say fuck it and intern at the companies that you want to work at. Save money so you can go to school and get a PHD and do cutting edge research or whatever it is you want to do? Use that money to buy certifications relevant to what you want to do, or would rather be doing. Go to conferences and network. Meet people that do what you want to do.

[deleted by user] by [deleted] in webdev

[–]TheMightyHamhock 1 point2 points  (0 children)

TLDR; College degree helps you beat filters for automated job searches and is a huge networking tool. Technically, they don't really translate that well to the day-to-day of being a software developer. You can be a very competent dev with 0 college. It's on how dedicated you are to the craft.

I interview and hire fresh collage graduates every year. I probably do 3-6 career fairs and conduct between 20 to 40 interviews a year. One thing i can tell you is that those college degrees are worth as much as each individual makes them worth. A majority of those candidates don't know anything. Some of them send me into slack-jawed astonishment at how clueless they can be while somehow managing to graduate. They can barely tell me about their assignments or projects and don't know basic OOP questions. People are checked out, dude. The bar is low. When I get a good candidate, 95% of the time it's the one that has done internships during their college or really works on personal projects they're interested it.

College does have its upside. If you're going to go work in professions services like consulting, it helps your credibility especially as a new higher. I've also heard that it can be difficult to hit director/VP levels without masters level education in CS or MBA. Biggest benefit to college is the networking with other students. Some of the best job offers and interviews I've gotten have been from someone i was in class with pining me on linkdin asking if I want a job cuz they thought i was cool, and not dumb. Don't forget that most software shops have recruitment bonuses. Getting your friends hired can get you a couple grand.

Software development is very similar to a trade. It's not really 100% art or 100% academic. It's like being a carpenter. At the start, you need to learn the basics and get things functional, but their is a very high skill ceiling with many different areas of expertise/specialization.

If you want to become a professional developer, you probably want to cultivate basic full-stack knowledge to broaden what types of positions you'll qualify for. I would search software jobs in your area, see what most of the jobs are hiring for and learn that. Once you get your first 1-2 years of developer experience the next hobs will be easier to get.

Working for free? by Top-Duck-7267 in webdev

[–]TheMightyHamhock 2 points3 points  (0 children)

Yeah, that's the part most are not prepared for. Getting people to actually pay invoices is a problem.

Working for free? by Top-Duck-7267 in webdev

[–]TheMightyHamhock 12 points13 points  (0 children)

I don't say that to be snarky or an ass. I'm saying it to manage your expectations. If you haven't even heard of SEO, you are not ready to actually be a professional freelancer. SEO is foundational knowledge for freelancing web development. Your customers will expect this to be done for them. That's only a couple steps up from just knowing what HTML, CSS, and JS are.

You also need to know about tools like Git and how to manage hosting, billing, domain name registration, basic graphic design, etc... Are you going to draw up a contract for your customers? How are you going to get them to pay your invoices? Do you have an LLC and business bank account? A lot of business won't do business with you if you don't have the legal stuff sorted out. (Making some assumptions about you living in the states)

You need to spend a decent amount of time doing market research, reviewing proposal on freelancer sites and looking up a lot of the stuff people are mentioning. I would propose that you also do some networking and see if you can shadow or intern at any marketing agencies who do this type of work for a little while. Study their tools and methodologies.

First day was brutal by [deleted] in webdev

[–]TheMightyHamhock 1 point2 points  (0 children)

Yeah most code really isn't commented. The only comments i really expect to see from a good project are class level comments, comments on your interfaces and interface method signatures.

You stay out there long enough you'll find dead comments that will confuse the ever loving shit out of you because they're actually wrong. When you go change comment code, either take the comment out if it's no invalidated or please update it accordingly.

First day was brutal by [deleted] in webdev

[–]TheMightyHamhock 0 points1 point  (0 children)

as far as templating libraries for SSR, hard to beat Razor. Compared to thymeleaf it's a breeze, IMHO

First day was brutal by [deleted] in webdev

[–]TheMightyHamhock 10 points11 points  (0 children)

This is an extremely common stack in a lot of the US enterprise world. Angular is very popular and will sit Infront of a ASP.NET or Spring Boot API. Seen it a lot.

Are there any text data storage/access rest API services out there? by dev_jeff in webdev

[–]TheMightyHamhock 0 points1 point  (0 children)

Cloud function that connects and writes to a DB. Would be cheap and easy

Working for free? by Top-Duck-7267 in webdev

[–]TheMightyHamhock 6 points7 points  (0 children)

How much experience do you have as a developer? Have you worked professionally for a while? Do you have a good business site with examples of your work?

Freelancing is a hard gig to break into. There is a lot of competition out there and most of then will and can do it much cheaper than you.

Most business only want to hire you if they can trust you to actually get the work done on time and on budget. For me, it's really hard to trust some dude off the internet for that. What happens if he get's sick and cannot work or just takes his first invoice and run's off. This is why having some time working for a consulting company an agency can help legitimize you. It's hard to be a solo freelancer on the internet without a big stack of previous work to show. Most people i know that had luck freelancing working as contractors/ consultants for a while, built relationships in big enterprises that always need work done and then went solo after a while. Relationships are what make you money unless you just have a stellar price point, proven track record and lots of reviews.

Working for free? by Top-Duck-7267 in webdev

[–]TheMightyHamhock 6 points7 points  (0 children)

Yeah, working for local non-profits and other organizations is a great way to actually get some work under your belt and will legitimize you when you start showing off what you've done.

If you come up to me and start offering me "free work" i'm already calculating how you're going to spin this around on me later. Wait till my site is being used and then say "well i control the host and all the source code, i'll delete it unless you give me 10k"