TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

On Good Software Engineers

130 点作者 BerislavLopac7 个月前

25 条评论

ozim7 个月前
You take proactive approach, listen to people, work on reducing complexity.<p>Then you wake up one day being steamrolled by business change where other senior dev with some business analyst hijacks process does some awful crap &quot;because business needs this ASAP&quot; and leaves you maintaining&#x2F;fixing up pile of crap.<p>Guess who is blamed later on for the system is not up to standard like having security hole or totally not logical flow in places where &quot;business need&quot; was implemented. Keep in mind after 6 months no one will remember they did that business change everyone will remember that you are maintaining the system because you try to keep it decent so it is your fault ;)
评论 #41969930 未加载
评论 #41969704 未加载
评论 #41969871 未加载
评论 #41974920 未加载
kozikow7 个月前
Story of two engineers in a team I worked with.<p>P is what most people would consider 10x engineer (but not this article). Can get anything done few times quicker than anyone else. It&#x27;s like 10 junior engineers stacked in one person. But it often would be unmaintainable mess.<p>M is a lot like article describes. Understands what needs to be done and creates good technical designs. Often unf*s mess created by P. Delivers business value. Do not write a lot of code.<p>It&#x27;s funny that depending on whom you ask, M or P would be the 10x engineer and other would be the bad engineer. Real 10x engineer can wear the M or P hat depending on circumstances.
评论 #41970750 未加载
评论 #41970075 未加载
indulona7 个月前
What differentiates a good programmer from a bad one? The good programmer will navigate the unknown on his own while the bad programmer will struggle. That&#x27;s about it. It does not matter what level of proficiency the programmer is at right now. It is a state of mind. The core of a personality. This translates to the whole career. Can you figure things out on your own or do you need someone to guide you, is what makes the ultimate difference.
评论 #41969070 未加载
评论 #41969077 未加载
braza7 个月前
The article is good, but I think it communicates with a narrower audience than it intended to in terms of demographics, especially the ones who do not work in nice tech companies.<p>For instance that passage:<p>&gt; I first found definitions of 10x engineers, superstars, or rockstar developers, which aren’t definitions of good engineers in any way. Someone may produce a lot of work but it’s often at the cost of team spirit and results in low-quality code. Ultimately, the team is demoralized and the organization bears the cost of substandard code.<p>I used to work in a tech company (bytes), and now I am working in an old money&#x2F;traditional company (atoms) that uses technology marginally to stay ahead. My team&#x27;s (a couple of dozens) median age is 53, and I do not see how this relates to them or even to myself.<p>I definitely would like to hear more from &quot;Working Bee Engineer&quot;, &quot;Dark Matter Engineer&quot;, &quot;How I survived 25 layoffs Engineer&quot;, &quot;How I kept my sanity working with internal clients Engineer&quot;, &quot;I managed to raise kids being in Tech as Engineer&quot;, &quot;The bodybuilder&#x2F;triathlete&#x2F;sports(wo)man Engineer&quot; and so on.<p>I&#x27;m not being cynical, but I miss the old days of actionable and down-to-earth blogposts that anyone could relate to.
larsonnn7 个月前
&gt; Good engineers know how to influence others and the organization to deliver a solution as a team.<p>This is a Problem, assuming someone is good at talking is also a good engineer.<p>&gt; Good engineers constantly work on reducing complexity in the codebase to consistently provide high quality.<p>Complexity for the manager? Who is deciding how complex a system is. This could also be a skill issue with the „team“ by taking skilled engineers and mix them with not so skilled ones.<p>Overall the article is written for managers which try to add a image of an engineer which is like a manager. Influence people and give up on complex stuff.
评论 #41969131 未加载
fullstackwife7 个月前
This is fine if you see programmer as a sort of large factory blue collar worker, but not all programmers see themselves in such position of a perfect cog in your &quot;org&quot;.<p>Disturbing fact: sometimes you get best ideas out of boredom:)
Daub7 个月前
&gt; Good engineers understand the stakeholders’ needs…<p>In my experience, this can take two very different forms:<p>1. Being observant of a stakeholder’s stated needs.<p>2. Being confident enough to tell a stakeholder what their needs should be.<p>On a pedantic note, I would prefer the term ‘effective’ engineer to ‘good’ engineer. The later sounds like a judgment on their moral character.
评论 #41969413 未加载
评论 #41969172 未加载
评论 #41969226 未加载
评论 #41969893 未加载
jimberlage7 个月前
It’s useful to have a vision like this. Not because everyone will hit all these criteria. (If you do, I’d love to steal your hiring process.)<p>I find it useful because coaching people to be better is easier with an ideal like this to point to, that is complete. Lots of managers struggle to put into words why they don’t see an employee as they see themselves. If you have a genuine difference of opinion, you can relate back to something like this. Say your employee does a lot of tickets, and sees themselves as a hyper productive engine on a team. You as a manager see them picking up low-impact tickets and not finishing any features the business asked for end-to-end. The employee wants their productivity to be recognized. You want your employee to be more focused on a single business outcome rather than seeing a high number of tickets in the done column.<p>Some people (especially neurodivergent people) really “get it” when they have a pre-read they can think on and apply to their situation. A blog post like this is nice because you can have the employee read a bullet and then talk about how it applies to their situation in a 1:1.
sidcool7 个月前
I like the post, but it&#x27;s a bit idealistic. It&#x27;s like a laundry list of all the perfect attributes of almost any profession. It&#x27;s like reading a religious text.
评论 #41969687 未加载
评论 #41970448 未加载
yosefk7 个月前
Very inspiring! I&#x27;m off to &quot;embed quality elements into my deliverables to increase consistency and velocity.&quot;<p>Apart from the tone, I agree that it&#x27;s awesome when an engineer understands your fucked up process and manages to be productive despite it (&quot;goes beyond the processes to independently drive work&quot;), but as a manager you can&#x27;t count on most people being like that and so you should work very hard to make your process work for people who do not think very much about what could go wrong when acting fairly naively according to this process.<p>It says in the end that these are basic expectations from any engineer or even any employee. Well, maybe, but most people don&#x27;t meet these expectations, and it&#x27;s a basic expectation from a manager to be able to work with actually available people and not only imaginary ones.
kl5ag7 个月前
&quot;A good engineer is one whom I, as a manager or peer, can trust to progress a project, knowing that they will deliver a solution by working with the team and producing good quality, again and again.&quot;<p>Not again. The real world does not work like that. The author has the luxury to have team meetings, onboarding, agile and all of that nonsense <i>because the hard parts of open source have already been written by 10x engineers</i>.<p>What the author is working on is presumably some kind of devops that uses other people&#x27;s software.<p>Perhaps OSS was a mistake. It enables all sorts of pundits and is now repackaged by &quot;AI&quot;.
评论 #41970893 未加载
_s_a_m_7 个月前
This post is sooo symptomatic of people who have too much time and don&#x27;t seem to be educated beyond their field. Overthinking something that maybe not that complicated after all. The egos of software people is just bigger than it should be. Also mythical thinking like &quot;10x bla bla&quot; is symptomatic.
评论 #41969451 未加载
punduk7 个月前
I don&#x27;t think good engineering is a soup of confusion like the one in this article. simple is beautiful. And I think good engineering is associated with simplicity.
louwrentius7 个月前
Maybe it&#x27;s hard to accept that often, code quality or technical prowess are not that important.<p>What is really important is understanding the actual process that is being supported by the thing you&#x27;re building.<p>It&#x27;s so obvious but building something technically sound that doesn&#x27;t address the actual organisational need is a 100% waste of time and has a huge opportunity cost.<p>And the reality seems to be that the business and IT don&#x27;t know the right answer upfront, so it&#x27;s - cliché alert - a journey between professionals helping each other understand how a proces should operate.<p>This has NOTHING to do with technology or technical implementations. At this level, tech is just an abstraction, a black box that does magic.
spacemanspiffii7 个月前
A developer that ticks all these boxes is certainly a Good Software Engineer, but the reverse relation doesn&#x27;t necessarily hold. There are many that have made very valuable contributions while not even working on a team, or perhaps even being an asshole to everyone around them, ignoring stakeholders, everything. Or just something less extreme, such as maybe they didn&#x27;t at all times know their organization that well. That is fine, if it works at their time and place. To call those &quot;Bad Software Engineers&quot; is unhelpful.
opentokix7 个月前
I have read many of this types of blog posts about 10x, good engineers and such.<p>The only thing I have learned during my close to 30 years of professional experience is how incredible rare they are. The really good engineers in IT.<p>They are so rare so MOST people will never work with even one. That is how rare they are.<p>And a &quot;Blogger, Writer, Philospher&quot; - have probably never worked with one, and never will. Because they are in a whole different sphere of engineering.<p>The number of systems is increasing explonentially - the number of truely good engineer is pretty much a constant number.
评论 #41981928 未加载
wiz21c7 个月前
FTA: &quot;Setting expectations for software engineers is tricky for all managers.&quot;<p>What about: &quot;Setting expectations for managers is tricky for all software engineers.&quot; ?
nicolay17 个月前
Good engineers want to create the best product possible, and are demanding from the product team. They want clarity and visibility on user insight in order to be able to do the right tradeoffs to maximize customer satisfaction.<p>-&gt; I think that as engineers, we also have the responsibility to create the best product (interested to have your feedback, I want to create a meetup talk on this subject)
Glitter70307 个月前
This post makes me a bit angry. In a nutshell it’s promoting engineers doing more project management.<p>I think an engineer at any level should not be managing (“driving”) projects, and you should not expect that, unless you are able to pay “the engineer” both a manager’s and an engineer’s compensation.<p>I like the idealistic view on proactivity, but I think idealising this soup of responsibilities should not be promoted.<p>I want a good engineer and I want a good manager as well in a team.
bjornsing7 个月前
All posts on this topic should start with a brief description of the problem domain, because all sensible conclusions depend on it. There are problem domains where you just have to be insanely smart to be able to contribute, and there are others (as I get the feeling is the case here) where you just need to be reasonably socially competent and dependable. A “good engineer” in one domain can be terrible in another.
andrewstuart7 个月前
The more a company attempts to define what a &quot;good software engineer&quot; is, the worse their hiring practices will become as they come to believe they can identify and select for &quot;good software engineers&quot;.<p>As the author says after articulating a long list of traits of a first class developer; &quot;I strongly believe all that I’ve mentioned is a basic expectation from any engineer.&quot;<p>Folks, apply for jobs where the employer is pragmatic about hiring and gets people employed and gets on with the job.
评论 #41969066 未加载
评论 #41969299 未加载
000ooo0007 个月前
Another day, another listicle about senior&#x2F;staff&#x2F;principal developer labelling disguised as a blog. Only insecure devs care about this crap. Devs who know their shit aren&#x27;t coming up with definitions distinguishing themselves from devs who don&#x27;t. They have better things to do (e.g. actual work).
评论 #41969611 未加载
评论 #41969168 未加载
hintymad7 个月前
&gt; We can’t expect a junior engineer to drive a big project; their scope will be limited<p>I find it a dilemma when it comes to driving &quot;big project&quot;, especially in a large company. The engineers who drive such projects often behave more like product managers. They sketch out key product features, work with teams to get roadmaps out, and convince the leadership and teams to get the right resources. In addition, they will also draw a few boxes to have a so-called &quot;architecture diagram&quot;, and hand out the actual design and implementation to lower-level engineers. I don&#x27;t deny the importance of such work, and I do recognize that junior engineers likely won&#x27;t have the clout or the knowledge to push such project forward. On the other hand, I find the value of such high-level engineers diminish fast in the industry, especially when they want to switch jobs, for the will have lost the ability to get down to specifics to solve tough technical problems. Case in point, I have seen most of the so-called &quot;uber TL&quot; fail interviews because all they could do was drawing a bunch of boxes and talking about strategies or requirements. They may tell you that a recommender pipeline will have retrieval, ranking, and reranking, and even throw around a few model names. But when you ask them any specifics about the landscape, the model architecture, the selection of specific technologies (especially how the selected tech works), they would get stuck. And they certainly can&#x27;t implement any of the said components.<p>Note this is not a criticism but a lament. I certainly face the same dilemma, and frequently question how I can continue to be more valuable as I grow in my career, especially given that that I don&#x27;t plan to say within the same company forever and I don&#x27;t want to be a professional box drawer for life. The only path I can think of now is to become someone like a great CS professor: the professor does not necessarily write all the papers, but she is invaluable to her students by unblocking them when needed, by understanding new paper better than anyone, by pointing out a direction that is not so obvious to the students, and etc. That is, to be someone like Wernher von Braun or Kelly Johnson. Someone who can code out a system like ClickHouse or at least pin down exactly which data structures to use, instead of telling his team vague ideas like let&#x27;s use SIMD to speed up the query. Someone who can write a working TLA+ spec to show the flaw in a design by his team instead of telling his team that they can use TLA+ to find intricate bugs. To be honest, I don&#x27;t know how to become like that while keeping getting promoted to a higher-level IC, but I don&#x27;t see other ways.
xnorswap7 个月前
I don&#x27;t like this re-framing of &quot;the 10x engineer&quot; to be someone who writes 10 times as much low-quality code.<p>It might not have been a rigorous study and may largely be a myth, but the myth is about engineers who are 10 times as productive, even accounting for quality.
评论 #41969711 未加载
评论 #41969429 未加载
评论 #41969315 未加载
评论 #41969218 未加载
评论 #41969559 未加载
评论 #41969191 未加载
评论 #41970033 未加载
评论 #41969782 未加载
评论 #41969385 未加载
评论 #41969434 未加载
评论 #41970078 未加载
revskill7 个月前
Good leetcoder is good engineerer