triston-notes/+ Encounters/Advice from a Senior Engineer.md

79 lines
3.8 KiB
Markdown
Raw Permalink Normal View History

2023-10-21 23:52:54 +00:00
---
tag: social
name: Advice from a Senior Engineer
---
### How to measure your own ability and skill
> For engineers, theres not a good way to measure yourself. There's no skill level. What do you want out of your career.
>
> Freelancer idea may be "how fast can i build something".
>
> Academic may be "whats the most complicating problem i can solve".
>
> The main problem, theres no one measuring stick. One way is, start with open source, can you solve a problem using code and get opinions from others. You can see on a team, who the better engineer is, you dont know why.. But you know.. **Junior engineers** can be eager to go and start building. One of the biggest predictors is, **"how many questions they ask after they get the user story"**.
>
### How Google hire Juniors
> Scoop up juniors and see who survives. Should be, **everyone is coachable**, everyone can learn. *Some people are more coachable than others*.
>
### What Can be learned from [Richard Hamming](https://en.wikipedia.org/wiki/Richard_Hamming)
> As the engineer you have to **have a vision for where the field will be in 20 years** and solve for that if you want to be a great engineer. **<span style="color: #d44c47; font-weight: bold">If you just do whatever comes your way you will spin in circles.</span>**
> **The difference between a career and a career with vision:**
If you're just working in your career, then you're just taking random steps.. On average, you never go further than the square root of the number of steps you've taken.. If you have a vision, a tiny bias, **over time you start wobbling toward that vision**. You'll still make mistakes, but you'll progress
>
### My vision
> **a.** work on problems that are **interesting to me**.
> **b.** Work for a company where the **end user and person paying us' incentives are aligned**.
> **c.** When I stop having fun, **go find bigger and more interesting challenges**
> Always have some goal.
> Evolving vision is ok.
> Get on top of your current hill to see a newer hill.. You may go down for a minute, but you'll go back up, to spot the bigger hill.
### An introduction to the Senior Mindset
> You may have a senior title but **you're not a true senior.** ***<span style="color: #d44c47">Senior takes a mindset.</span>*
>
>
> Quickest way to tell if someone is mid or junior is to ask about DRY. The more senior person the **less they care about their code not being duplicated and writing abstractions**. Its so much **easier to fix code that is verbose** and easier to read than it is super tight and brilliant and hard to understand.
>
> The rule of three.. Until you duplicate 3 times, its hard to know when something needs to be abstracted. **AHA principle**
>
> The **more senior** you are, the **dummer your code looks**
> *Einstein: If you cant explain it to a child you dont fully understand it*
>
> See [seniormindset.com](http://seniormindset.com/)
>
### what do employers look for in junior frontend developers?
> potential
> hit the ground running
> coachable
> learn quickly
### what projects impress employers?
> CRUD apps are very common! 👎🏻
> Show your side project has users and you iterate upon it via user feedback ✅
> Can you finish something ✅
### Difference between frontend ENGINEER and frontend DEVELOPER
> Engineer == 20k-30k more salary
> A **Developer** is someone who can **<span style="color: #448361">take a spec and write code to fit that spec</span>
> An **Engineer** is someone who can <span style="color: #9065b0">solve a problem</span> and happens to be <span style="color: #9065b0">using code</span> to solve that problem
>
>
> "Engineering is programming over time"
>
> - meaning, an engineer programs for the future, solving for potential future problems as apposed to a developer solving for today