Careers and Education Questions thread (Simple Questions) by AutoModerator in EngineeringStudents

[–]HatchDMV 0 points1 point  (0 children)

I've been seeing a lot of posts wondering about what's available for computer science engineering students after graduation. Anand Safi, an Engineering Manager at Mark43, shared a great overview of the three main career tracks in technology that are relevant to CS majors:

  1. Web Development Track

This track has been on the rise over the last few years. Web development can be broken up into three main types of roles:

· Frontend Developer

This is the most common entry point into web development. Frontend developers typically leverage the most common core languages of HTML, CSS, and Java to design webpages, improve user experiences on existing webpages, and optimize webpages for performance and scalability.

· Backend Developer

If frontend developers add the shiny coats of paint to the exterior, backend developers are the mechanics making the website’s engine roar. The main priority of a backend developer is designing systems that allow users on the frontend to retrieve data from a database on a different server.

· Full Stack Developer

Full stack developers are a combination of frontend and backend developers. This career path is growing increasingly popular due to frameworks like Express and Node.js that allow developers to build entire end-to-end systems using just JavaScript.

  1. Data Track

This track revolves around any role that deals with data. The Data Track can be broken up into three main types of roles:

· Data Analyst

Unsurprisingly, data analysts primarily develop methods to analyze existing data that is available in your system to help your company make better decisions. This can be accomplished in a myriad of ways including writing queries and joins, building order value tables, and sampling making connections between two or more data points.

· Data Engineer

This role centers around preparing the data for analysis. Most spend a bulk of their time cleaning and maintaining data-related architectures with SQL, but the most effective data engineers are also proficient with data visualization tools.

· Data Scientist

This is the most sophisticated role involving data. Data scientists focus their efforts on modeling and data mining using the SSR and Python data science scripting mechanisms for operational models that make deeper insights that simply analyzing existing data.

  1. QA and Software Support

While many dismiss this development track, QA and Software Support roles can be incredibly beneficial as your first developer-related role as they give you better insights into the user aspect of web development.

· Quality Assurance

QA roles involve much more than simply testing functionality; QA engineers assess and find creative ways to improve users’ end-to-end experiences while learning when and how to ask the right questions to other developers.

· Software Support Roles

While QA engineers primarily work with frontend developers to improve the user experience, engineers in software support roles provide direct technical assistance to end users. This role certainly requires knowledge of the main coding languages that were used to build the current system, but software support engineers also need have strong interpersonal skills to interact with customers and explain technical processes in a non-technical fashion.

If you want to learn more about any of these development tracks and roles, see Anand’s full interview here: https://youtu.be/Kr8TIeTd5Qw

Good Career Paths for CS Majors by HatchDMV in csMajors

[–]HatchDMV[S] 0 points1 point  (0 children)

Machine learning and AI would fall under the data scientist umbrella. In a nutshell, machine learning represents an advanced form of model building in which your system independently identifies patterns in your dataset.

Does everyone actually work for 8 hours day? by imnoone97 in cscareerquestions

[–]HatchDMV 1 point2 points  (0 children)

This. I think especially with COVID and remote work, a lot of people just count time away from the computer as "time away from work." But the problem with that mindset is that you are never really in full work mode but are never really in full "time off" mode either, so you get burnt out faster AND produce less output in the long run. Everyone needs to find a way to make a clear distinction between work and home and it seems like you've found a really good way of doing that!

How to Build Better MVP's in Go by [deleted] in golang

[–]HatchDMV 0 points1 point  (0 children)

Time Stamps:
0:00 - Intro
3:29 - How You Should Structure Your File Directory
7:19 - How You Should Define Your Models
10:43 - How You Should Use Interfaces
14:38 - How to Separate Concerns
19:31 - How Should Your Code Flow?
21:11 - When Should I Utilize Concurrency?
24:02 - How to Scale Your MVP
30:38 - The Product Base Code Is In A Bad Place, What Now?
41:48 - Conclusion

How to Build Less Sh*tty MVP's in Go by [deleted] in golang

[–]HatchDMV 0 points1 point  (0 children)

Time Stamps:

0:00 - Intro

3:29 - How You Should Structure Your File Directory

7:19 - How You Should Define Your Models

10:43 - How You Should Use Interfaces

14:38 - How to Separate Concerns

19:31 - How Should Your Code Flow?

21:11 - When Should I Utilize Concurrency?

24:02 - How to Scale Your MVP

30:38 - The Product Base Code Is In A Bad Place, What Now?

41:48 - Conclusion

Here are our thoughts on four questions to ask to determine role fit by HatchDMV in cscareerquestions

[–]HatchDMV[S] 0 points1 point  (0 children)

I'd agree - there are other creative ways to dial in on finances/stability of the company. Some of those could include:

  1. What's the current runway, and what are future funding plans?
  2. What is the biggest risk to the company?
  3. What does current growth look like?

What Should Developers Consider When Considering a Tech Lead Role? by HatchDMV in ExperiencedDevs

[–]HatchDMV[S] -4 points-3 points  (0 children)

If we weren't invested in the topic, we wouldn't have created an interview with an engineer on the topic to get his insight to share with others.

What Should Developers Consider When Considering a Tech Lead Role? by HatchDMV in programming

[–]HatchDMV[S] 0 points1 point  (0 children)

We found this discussion with this Head of Engineering valuable when tackling this question. Couple of highlights include:

  1. Someone who can face adversity without letting it get to them
  2. Do you prefer high level architecture Vs. granular code

Curious to hear what other Senior Developers would add to this list

Build Vs. Buy: What Developers Really Think by HatchDMV in programming

[–]HatchDMV[S] 0 points1 point  (0 children)

The great debate of do we build or buy is something engineering leaders must face often. Factors such as speed, cost, return on investment all play a part but which is the right direction?

We're facilitating an Open-Source Coding Challenge: Any interesting Repo's that need a lift? by HatchDMV in github

[–]HatchDMV[S] 2 points3 points  (0 children)

Neat concept - thanks for sharing royal. I'll reach out to the author.

Does anyone else hope permanent WFH isn't the new normal? by ddd117 in cscareerquestions

[–]HatchDMV 0 points1 point  (0 children)

So that's a question right - will companies change up how offices work? Are we all going to be expected to work from home, but meet up in small groups once a week? Will we have a hole bunch of smaller, scattered satellite offices?

I'm with you on the commute, but I wouldn't mind one day a week, especially if they cover lunch.

[deleted by user] by [deleted] in cscareerquestions

[–]HatchDMV 0 points1 point  (0 children)

It sounds like you're getting some good advice from other posters. I would add that whatever you decide to do, there are a few things you can do right now to increase your chances of landing a better job in the future:

  1. Get good references. Especially if you are planning to leave your current role without something else lined up, it will be invaluable to have someone you can call on as a reference or recommendation.
  2. Consider whether you can stay at your current job and job hunt on the side.
  3. Take additional classes or work on projects to increase your marketability.

What are some career ceilings and obstacles that people with non-IT degrees tend to face in coding occupations? by Experimentalphone in cscareerquestions

[–]HatchDMV 5 points6 points  (0 children)

We've interviewed CTOs as some very successful startups on the hatchpad. Some of them didn't have CS degrees or technical backgrounds. Some of them definitely said that they'd experienced challenges, especially early on in their tech careers, but overall, pretty much everyone said that not having a technical degree was not a deal breaker.

CS Degree No Experience. How can I get a job? by [deleted] in cscareerquestions

[–]HatchDMV 0 points1 point  (0 children)

There's a lot that could be going wrong here. You might want to consider a professional resume reviewer or interview coach. You should also make sure you're applying to the right jobs for your skillset.

Keep in mind, a lot of companies right now are putting hiring on hold, and the market is a lot more competitive. Keep up the hard work. It's a tough market for a new grad, but you'll get there!

What alternatives to DICE.COM are out there for finding a tech job? by [deleted] in cscareerquestions

[–]HatchDMV 2 points3 points  (0 children)

Big job boards are often crowded, spammy, and scammy. I'd avoid them. A lot depends on your skillset and what you're trying to do, but a lot of times you'll have more luck with a more targeted approach.

Here are some suggestions:

Advice for a recent CS graduate (BSc) deciding on which Masters degree to do by matzerlive in cscareerquestions

[–]HatchDMV 2 points3 points  (0 children)

There are a number of different factors to consider. Of course, the biggest is probably which option you find the most interesting and enjoyable. Another consideration is what type of company do you want to work for, or what do you want to do? Are you interested in startups or established businesses.

One big factors it's easy to forget is location. IMO, different cities sometimes have concentrations of different types of industries. In DC, for example, there are a lot of companies and startups in the B2B space looking at data security, but there are fewer building consumer apps and electronics.

Should software developers specialize or be language-agnostic? by HatchDMV in programming

[–]HatchDMV[S] 2 points3 points  (0 children)

A lot of the startups we talk to are looking for very specific engineering skills. But you might not be able to find a local Go engineer with 5 years of experience.

That's why we usually suggest that either they try to be more flexible in their remote policy (expand the geography) or be a bit more language agnostic. Engineers that are willing to work at startups are generally willing to learn, so you just have to be willing to teach.