Loved it. One of my favorite sayings is "Experience is what you get when you don't get the result you were expecting".
@brownhorsesoftware36058 сағат бұрын
This reminds me of the MBA at the bank data center who decided he would write the code to generate a business account summary report himself in APL. It brought the mainframe to its knees and ran for hours. I took pity on the auditor tasked with running the report. It took me 10 minutes to rewrite it in the data retrieval scripting language and submit to operations where it ran in just minutes. The MBA was furious but everyone else couldn't thank me enough.
@omara50017 сағат бұрын
@@brownhorsesoftware3605 MBAs are doing a great service to humanity 😅
@nickbarton31919 сағат бұрын
I'd add that a senior also has domain(s) knowledge and commercial awareness. After all, we are about providing value to our customers, a senior must understand this and have the knowledge and skills to deliver value. Maybe I'm describing a consultant engineer (my job title).
@judgewest20005 сағат бұрын
Completely agree. Domain knowledge is insanely crucial.
@gppsoftware4 сағат бұрын
I'm also a consultant engineer and I completely agree. While most people determine their seniority based on time served and which and how many 'cool' languages or 'patterns' they have under their belt, very few of them have commercial awareness or any concept of providing value to customers and that includes a lot of management.
@nickbarton319148 минут бұрын
@@gppsoftware What I find extraordinary is how little understanding there is in most businesses that engineers effectively spend money, hopefully for the betterment of the whole business. The Financial Director complained that the company was "too engineering lead" not understanding where this months, year, 5 year profit is actually coming from. Even though the word "Technology" is in the company name.
@gppsoftware3 минут бұрын
@@nickbarton3191 Yes, that is a very good point. The Financial director says that because he looks at the budgets and sees what the business really is by virtue of where most of the expenditure goes. Unfortunately, these 'financial types' don't like the change that has occurred over the last 1-2 decades whereby companies today are focused around technology departments (which should be leading the business and innovation) and not accounts departments (which are typically not innovative).
@judgewest20005 сағат бұрын
This is fairly important. I run a team of 8 devs etc and I can rank them first to last in terms of capability, and it's not necessarily based on time served.
@lumeronswift2 сағат бұрын
A lot of the best work in development is done in visual maps - if you can efficiently draw up a full picture of the process and interactions and scopes, you can more easily work with business as well as technical teams as well as project managers. Junior (and I still feel a bit junior myself) devs tend to hear "we need to fix X problem" and then focus on that specifically, rather than taking a holistic view.
@sanderd178 сағат бұрын
Communication is also a big quality of senior developers. Senior devs should be able to detect and raise possible issues before they arise.
@CarstenSaager4 сағат бұрын
Some years back I said when mentoring Juniors, was that programming is more linguistics than math. Our job is to find true representations of human ideas in a machine executable form. I was then still under the impression of a brilliant engineer who was a trained linguist. Now I am on the more mathematical interpretation, but it is only the second step, just like we use math to describe things, math in software development describes the linguistics or insights we gained of the problem
@freeborn79 сағат бұрын
Extremely good description. But I'd be careful judging these things based on a resume. Me for example, I spent 20 years on the same tech stack. But I was building my own things on the side with all the latest and greatest technologies and practices. And so I was always ready to take on new stuff with an in-depth and breadth of understanding. It was no problem for me to move from a university to a stock exchange, for example. I think having a thorough interview process is far superior then judging based on resume
@xybersurfer3 сағат бұрын
good point. i always put those side projects on my resume
@freeborn73 сағат бұрын
@xybersurfer I do too but it may not always be the case.
@cheetah1004 сағат бұрын
The fundamental difference between a junior, intermediate and senior is responsibility. A junior is invested with no trust. They are given simple tasks that are not in the critical path, and their solutions are reviewed in depth. They often have a mentor. An intermediate has developed the respect and trust required to write code independently based on a story without much oversight. They are given story level responsibility. Senior developers are responsible for the product as a whole, the architecture, the design, delivery and quality assurance. While the whole team is technically responsible, it falls to seniors to enforce standards through mentorship and guidance.
@harmonicseries65824 сағат бұрын
The biggest difference is senior engineers are able to integrate economic thinking into how they do their job, and that requires deep knowledge in all three domains of the application under development, tools and the stack, and business values
@alphaphoenicis3 сағат бұрын
Absolutely agree that writing code to solve problems is generally not very hard - especially with your typical line-of-business apps. Junior developers are challenged to find a solution to a problem - seniors are challenged by finding a solution that best solves the problem. Seniors also have a healthy dose of cynicism when considering the promises of tools or patterns, and are more aware of the costs of maintenance and refactoring incorrect assumptions. These are hard skills to learn outside of direct experience - and leads to the dangerous newly minted seniors throwing every "best practice" pattern into their next solution. I have often felt, especially in the last 5-10 years, that many engineers are uncomfortable with the current state of excellent tooling and frameworks - they feel that a simple problem requires the same levels of effort (and lines of code) as a 2000s era solution. Honestly the expressiveness of the tooling has improved to the point where if there is much more code than a plain English description of the solution, then something has gone horribly wrong.
@rustythoughts5 сағат бұрын
I think being senior also includes being effective at enabling others in the team: one of the benefits of being able to solve problems in many ways is being able to engage with less experienced or able developers on their terms, not requiring them to adapt to you; being able to fill the gaps or smooth the edges of the work of less experienced colleagues approach so that it can succeed on their terms. This drives real collective ownership which is a critical part of long term team success, consistent team output, effective handling of incidents, etc. And it also enables learning, being shown that your ideas are right but can be improved, being shown how your 8/10 can be a 10/10, is more effective for learning than being made to feel your work is a dead end and being pushed to try and deliver in a space of solutions you don't really understand. This also builds trust and confidence so that when you do need to lead people into a different solution space they're much more willing to follow you.
@TNothingFree7 сағат бұрын
Senior developers are generally people that have more agency and less friction with entities. There's a good point where friction in the company disables a senior developer from working efficiently. While a junior developer will probably create frictions that lead to uncertainties and greater time spent on projects. There's also the level of responsibility a senior developer can have on a product or a system.
@bobbycrosby97658 сағат бұрын
Multiple tech stacks seems weird. Lots of them are almost identical with extremely nuanced gotchas. People love to tout the numbers of tech they "know" when they're all so similar and/or they've never used it for a significant period of time and/or in a production environment and/or in maintenance mode. If your goal is 3 actual different tech stacks with actual, full product lifecycle knowledge, I don't realistically see how you accomplish this in less than 10 or so years. A year per stack isn't enough. 3 might be.
@gppsoftware4 сағат бұрын
A senior has the commercial ability to be able to evaluate whether multiple tech stacks are even appropriate. Just because you can, doesn't mean you should!
@theondono8 сағат бұрын
I don’t think there’s a hard divide, just characteristics that I expect both to have: For juniors I expect: - To need occasional supervision to avoid time sinks - To be able to complete concrete tasks with some general directions from a senior - To require me to ask them if they need help every once in a while - Their biggest asset is knowing *what to do*. For seniors: - To autonomously identify when they are spending too much time on something and adapt. - to be able to plan and complete tasks expressed as vague goals by non-technical folk - to be proactive about asking for help - Their biggest asset is what we *should NOT do*.
@orionh55356 сағат бұрын
The 0s on your paycheck?
@LA-fb9bf6 сағат бұрын
Why do I get an AI generated German translation? Where can I hear the original one?
@gammalgris24975 сағат бұрын
Check your browser settings. Maybe there the translation may be activaded
@doutordrive3 сағат бұрын
Não concordo muito, se ficarmos programando em várias linguagens, frameworks, SO´s diferentes seremos um pato. Nada mal, anda mal e voa mal. Um dev senior precisa ter pelo menos 4 anos em uma mesma linguagem, pois é nela que você irá masterizar os conceitos que depois podem ser aplicados em outras linguagens, stacks, etc.
@jvf8906 сағат бұрын
What are you saying, the difference between junior and senior , is "ju" and "se"