TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Tools you’d miss if you left a company

170 pointsby kogirover 5 years ago

32 comments

cwyersover 5 years ago
Not everyone finds BigCorp problems to be the interesting problems. Not everyone wants to live in the Bay Area. There's a lot of jobs in the world that aren't at FAANG, and it's okay if the right job for someone is at a place whose entire dev shop is smaller than the team at Google that maintains Blaze. If you find yourself in a job like that, it is absolutely the right call to invest in the best commodity tools you can (where best is a local, not a global, maxima) and focus on the things you can do that add value to your org.
评论 #22283047 未加载
评论 #22281148 未加载
评论 #22281015 未加载
SergeAxover 5 years ago
I have to strongly disagree. When doing business you are solving a business problems. Facebook, Google, Microsoft as business has grown so much they have problems of scale no open tools are able to handle. On the other hand, any kind of smaller company doesn&#x27;t have those business problems, but a cost of having and maintaining in-house solutions of that scale will just effectively topple and sink them.<p>This is why I&#x27;m always frowning during job interviews with engineers telling stories about they migrations from monolith to microservices and putting it all into k8s, while their headcount in the firs tens and their DAU in about 10000 users.<p>Disclaimer: I worked in Yandex, virtually Russian Google. Loads and operations scale there are comparable with second rank international tech giants. Yandex has and have lots of internal tools to handle that load and scale, but I&#x27;ve almost never really <i>needed</i> them in smaller companies. Maybe &quot;nice to have&quot; couple of times.
评论 #22286366 未加载
Insanityover 5 years ago
At one of the places I worked, a relatively large university-hospital, there was an entire Java-UI framework build based on C#s XAML. But it could also experimentally be compiled to html&#x2F;css&#x2F;js.<p>Writing any type of UI in Swing is just painful - but this system made it so much nicer. It also had a WYSIWYG editor that you could interop with actually writing the code. Plus you could write either the &#x27;markup language&#x27; or the &quot;Java&quot; flavour directly.<p>Making complex responsive UIs was a breeze. It&#x27;s a shame it did not get open sourced - but it was tied into a great amount of internal tooling. (The entire codebase was 28+ million lines of code when I left).<p>It&#x27;s one of the few non-open source libraries I&#x27;ve worked with that really impressed me.
评论 #22279643 未加载
tmpz22over 5 years ago
Doesn&#x27;t it take months to train new developers in these mystical internal tools? I remember hearing specifically that Google expects 5+ months of training until a developer is productive. How many companies can afford to spend ~50k+&#x2F;hire on on-boarding ((100k&#x2F;yr * 5 months) + benefits)? What is the opportunity cost of holding so many people in training mode for this time period?<p>Different companies have different problems. Big companies need big expensive tools to help with their problems. Little companies usually get by with smaller more portable tools. Let&#x27;s not use this to demean people at small companies with some false sense of superiority please...
评论 #22280396 未加载
评论 #22281321 未加载
评论 #22281165 未加载
评论 #22281238 未加载
评论 #22281073 未加载
评论 #22279944 未加载
评论 #22280901 未加载
评论 #22281006 未加载
analog31over 5 years ago
I&#x27;d miss the engineering machine shop. Those facilities only get developed by accident, for instance if a company gets rid of its professional machinist but keeps the equipment, or something like that. The machines and collections of tooling take a long time to curate. Any modern manager would refuse to allow that much stuff to be purchased if they were asked, and believe in the magic of outsourcing everything.
评论 #22279301 未加载
评论 #22279710 未加载
winkover 5 years ago
This whole premise falls completely flat if you&#x27;ve only ever worked at small and&#x2F;or young companies:<p>&gt; but which didn&#x27;t exist on the outside world.<p>&gt; You&#x27;re not allowed to include things you or your friends built<p>If you work for a service provider, you probably have zero to not much internal tooling, because you&#x27;re usually solving the customer&#x27;s problems, not your company&#x27;s. When I did, we open sourced everything cool we built - sometimes tried and true defaults, or sensible Vagrantboxes or something like that. (Today that would be Dockerfiles, I guess) - and I consider myself lucky to have worked at a smaller company that was close to the FOSS scene, and not something like Accenture. Companies like ThoughtWorks might be an outlier here.<p>You&#x27;re unlikely to build something so immensely cool in your first 1-2 years in a startup that it will change your live (as a developer) completely. (This is not about your company&#x27;s product, but internal developer tooling, so if your startup does developer tools as a product, you&#x27;re the 1% where this would apply).<p>And finally, if your startup grows.. you might probably still not be the next Google or Facebook where the internal team providing nice things to your fleet of developers is bigger than some companies. Internal tooling will often be seen more of a cost factor than a tool for productivity enhancement. And often it&#x27;s actually the case. In my current company we just have so many software development teams creating parts of our products.. so many languages (with good reason) - the only internal things I could think about that would even make sense for all of them would be some code review tool, or anything targeting source control or maybe CI. Anything else would have to be really workflow-centric and language-agnostic. Anything regarding the mentioned borg&#x2F;k8s&#x2F;BigTable would be completely useless, for example.<p>That said, at my last company, I think we created some pretty cool things that made a lot of things a lot easier for the team. But we were two small teams, so point to &quot;we built it ourselves, for ourselves&quot; applies. Also it probably wasn&#x27;t so revolutionary in the greater sense, but everything made sense for that company and I&#x27;m often still sad if I have to solve some similar problem these days and don&#x27;t have my old setup (more than a specific tool).
评论 #22280095 未加载
stochastasticover 5 years ago
This really resonates with me. I have seen the “buy before you build” attitude turn into “buy because we can’t build”. I know correlation is not causation and there are always plenty of other things going on... but it sure seems like the pride in our work dropped off and we were on the wrong side of every tipping point.
评论 #22279300 未加载
superbatfishover 5 years ago
Couldn’t it be argued that all software is built with more “glue” than non-glue? That’s just the nature of the beast. If a user wants to, say, view a record from a remote database in her web browser, how many separate layers of code does that involve? (Several.) How many of them aren’t “glue”? (I dunno, like two?)<p>Perhaps it’s true that most glue is poorly written, but doesn’t that imply that writing good glue is, in fact, difficult, and therefore it’s as hard — or maybe harder - than building “real” things?
yoz-yover 5 years ago
I don&#x27;t know. Having an &quot;80% solution&quot; but not needing to support or fix it is not such a bad price to pay. Also this seems to be a bit skewed towards large networked solutions.
thesehandsover 5 years ago
Wanted to see what Facebook Scuba was, and found this comment thread that really highlights the point of this blog. <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=13463016" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=13463016</a>
评论 #22279507 未加载
sersheover 5 years ago
One problem that I&#x27;ve seen in one such large company, and heard of from some people in others (FAANGs), is that there&#x27;s no incentive to maintain these internal tools. Sure, they often start out as sort of amazing and there&#x27;s a ship email and for 1-3 years a strong team, but you are unlikely to be promoted a lot polishing UI, fixing bugs and adding features or even support for new backend systems... so, eventually there&#x27;s a skeleton crew maintaining an old tool, everybody complains how it&#x27;s slow and sucks and behind the times, and then a brand new replacement is built that is going to fix everything. There&#x27;s a ship email, people gradually switch to it, rinse, repeat.
ThrowAwayGlenover 5 years ago
ime, for many companies, standard, off-the-shelf tooling that&#x27;s a mix of OSS and paid services works great. And one benefit is that when you leave, you can bring whatever tools you loved into the next company.<p>The reason Facebook and Google built their own is that they&#x27;re at such a huge scale both in terms of usage and number of engineers, that none of the off-the-shelf things work for them. For most companies that&#x27;s not the case.
yibgover 5 years ago
Nothing wrong with writing glue, if that’s what the business &#x2F; company &#x2F; market needs.<p>Having said that, I do miss the data that’s available at FAANG companies (at least ones I’ve been at). I could dig up all sorts of system and business data, and really get good insight into both what my application and the users are doing. Tends to lead to a lot better and more clear decisions and thus helps to build the right thing.
stereolambdaover 5 years ago
I don&#x27;t agree without reservations but like how against the grain this currently is. Outsourcing everything does seem like a sign of immediate hyperoptimization and missing building a more lasting engineering value. Do as little as possible to extract <i>some</i> margin. There is business wisdom in this but indeed such companies would seem more brittle. Sometimes it&#x27;s like there&#x27;s an ecosystem of plumbing companies selling to other plumbing companies without much visible external cash intake.<p>That being said, I think most of the things she mentions are not customer facing but still pretty differentiating to the businesses.<p>Another perspective is that the first crop of truly successful Internet companies were in the position to solve the big backend problems with running big Internet companies in-house. Nowadays getting to the scale while building some fundamental in-house stuff makes less economic sense (you&#x27;d lose to someone who doesn&#x27;t). It&#x27;s probably better to have some unique technology but more closely related to the specific business.
doggydogs94over 5 years ago
If the tool is valuable to you, make sure you know exactly how it works. Then you can recreate it, for yourself at least, whenever you go.
评论 #22291483 未加载
alexhutchesonover 5 years ago
For 99% of engineering organizations, internal engineering tooling is not your source of competitive advantage. Your advantage in the market comes from understanding the needs of your target user better than anyone else, and building a product that meets those needs.<p>For every piece of infrastructure or developer tooling you need, you have to make a buy vs. build decision based on cost&#x2F;benefit analysis. Your cost to &quot;buy&quot; needs to include the upfront cost of developer time to configure the software for your needs, and the ongoing support cost to make sure it continues to work. When you include this, even open source software isn&#x27;t &quot;free&quot;, although it may be cheap. Your cost to &quot;build&quot; includes the upfront engineering time to design &amp; code, ongoing support time to keep it working, <i>and</i> opportunity costs incurred because until the system is actually ready, no one can use it, and they have to either meet their needs in some other way or simply block until the tool is complete.<p>Very large engineering organizations like Facebook, Netflix, etc. can amortize the cost of tool and infrastructure development over thousands of developers and an enormous infrastructure budget. If a tool would make most of Facebook&#x27;s developer&#x27;s 3% more efficient, than it&#x27;s worth staffing a team to build that tool. If better caching infrastructure could reduce Netflix&#x27;s network usage by 3%, then it&#x27;s worth staffing a team to build that infrastructure.<p>If you&#x27;re a small- or medium-sized business, then that math doesn&#x27;t pencil out. A 3% (or even 10%) developer efficiency improvement doesn&#x27;t even pay for the opportunity cost of one developer. A 10% decrease in a single dimension of your AWS bill probably doesn&#x27;t pay for the developer time either.<p>If you&#x27;re at a mega-corp with a huge engineering staff: Yes, absolutely invest in tools that make your engineers more productive, especially if you&#x27;ve identified truly unique needs that can&#x27;t be met by off-the-shelf software.<p>If you&#x27;re at a smaller business: Focus your developer energy on your user-facing problems, and almost always prefer to &quot;buy&quot; instead of &quot;build&quot; (where &quot;buy&quot; includes using open source software).
评论 #22279359 未加载
评论 #22279462 未加载
评论 #22279264 未加载
crispinbover 5 years ago
<i>If you can&#x27;t come up with anything, it&#x27;s possible you&#x27;re just beyond repair and too snarky to think reasonably</i><p>Or perhaps that we&#x27;ve mostly worked in crap dev jobs&#x2F;companies? There are easily enough of them around to encompass a career.
评论 #22279648 未加载
SZJXover 5 years ago
This article makes little sense. &quot;Engineering&quot; by definition is some sort of &quot;glue&quot; work that reuses existing libraries&#x2F;wheels and builds solutions out of them to address specific problems. I as an engineer am proud of this glue work that I do, just like the carpenters, plumbers, cathedral builders, doctors etc. If you really want to be <i>unique</i> and invent something, you should be in the academia and are probably in the wrong place to begin with.<p>I have a friend who worked in the TensorFlow team and still quit to pursue a PhD. In his words &quot;all engineering jobs are boring&quot; from his perspective. I don&#x27;t think being in a BigCorp or not makes much difference at all.
zhte415over 5 years ago
I&#x27;ve recently branched out on my own. Never had great tooling, was in government or a F50 where chains of approvals for the slightest changes were cursed by all, including those doing the approving. But, there are some organisational things I miss:<p>Having someone&#x2F;a team to ensure network uptime is fantastic and that have the scale and experience to anticipate and mitigate potential trouble before it comes up. Likewise all infra in general. Having a legal department to ask &quot;Can I do this?&quot; where often the answer may be &quot;We don&#x27;t know&quot; but that&#x27;s still an answer. A security force, property, accounting, providing peace of mind. Someone making sure the projector&#x27;s setup, tiny things that add up quickly.<p>There are downsides to this, such &#x27;organisation&#x27; often grinds things to a glacial pace, hence why I&#x27;m breaking out by myself now, but... not tooling, I can take care of that myself and I&#x27;m incredibly thankful for the SaaS ecosystem that would have made this impossible even a decade ago, or at least very inconvenient with 3rd party consultants providing such services for high fees and little more. There are a lot of things an organisation provides that we can take for granted, and having that experience provides a great bonus in expectations of robustness not only in technology but in all processes of a business. Tooling is, in the end, in the mind.
kelnosover 5 years ago
I&#x27;m always so disappointed that we&#x27;re all so closed when it comes to tooling. It&#x27;s fortunate that some tools get open-sourced, but it&#x27;s also astounding the amount of time and money that is wasted building the same tools over and over at each company.<p>Sure, sometimes paying for a hosted solution for your CI, deployments, container platform, data pipeline, etc. isn&#x27;t the most ideal route, depending on your business, but I&#x27;d much rather focus on building actual product over reinventing the deployment system wheel for the Nth time.<p>&gt; <i>People from Google probably miss Borg (and lament the whole Kubernetes thing) or BigTable.</i><p>I&#x27;ve never worked at Google, and thus have no experience with Borg, but Kubernetes is <i>exactly</i> what I want to see companies open-sourcing, or, if they must, selling. I don&#x27;t see what there is to lament. Being able to start a new company and not have to reinvent and rebuild your own deployment&#x2F;container platform is a <i>huge</i> gift.<p>For the most part I find this blog to be insightful and fun to read, but this post IMO completely misses the mark. Given that I think the author works a lot on the operations side of the house, I guess I&#x27;m not surprised. Internal platform tools are there to serve the needs of the product teams; they don&#x27;t exist just to make someone feel good about their ability to build something instead of buying instead, which she unfairly looks down on so disdainfully, as if it&#x27;s not <i>real</i> engineering. Part of doing engineering is putting your ego aside when it&#x27;s more cost-effective and robust to use someone else&#x27;s solution instead of rolling your own.
评论 #22280904 未加载
heelixover 5 years ago
The only thing I&#x27;d miss from a larger company is the travel budget. The &#x27;devil may care&#x27; attitude to drop a couple grand on a short window flight... compared to travel with the small company where that meeting could break the company. Double goes for the in-house travel agent who sorted everything while in route - Jane... you were missed.
jackie_treehornover 5 years ago
I just joined apple and I miss all the Linux tools
评论 #22279085 未加载
评论 #22279751 未加载
adreamingsoulover 5 years ago
I honestly miss the internal tooling at AWS. The build system and CI&#x2F;CD pipelines used internally are truely amazing.
评论 #22281821 未加载
novokover 5 years ago
I’ve been at places where they should of bought vs build, because they don’t put enough staff on it
lidHanteykover 5 years ago
I prefer Kubernetes and Prometheus to Borg and Borgmon. Better interoperability, portability, and documentation. Does any other Xoogler have thoughts on this? The author didn&#x27;t mention it, but I also prefer Capn to Proto3.
评论 #22279719 未加载
caseymarquisover 5 years ago
Every time I make a neat tool I open source it using the unlicense so I can use it elsewhere with no attribution. I&#x27;m happy to work at a company where this is possible. This doesn&#x27;t apply to business critical code a competitor might want, just libraries and tools for making generic &#x27;stuff&#x27;. Typically, I make the tools at home first and decide I want to use them at work, but I eventually end up patching them at work for company purposes.
bullenover 5 years ago
I solved this problem 10 years ago by building my own open-source stack and only working with that stack: <a href="https:&#x2F;&#x2F;github.com&#x2F;tinspin" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;tinspin</a><p>You should build your own tools, that you bring with you, that is what all artisans have done for all time.<p>No reason to change that just because you can use the newest buss-word every week.
pjmlpover 5 years ago
The only thing I miss are teammates and some of the office moments we had together, but those luckily survive employers and we get to meet in other contexts.<p>I never been attached to work tools, or technology fads, things are ephemeral, best practices of today are the legacy codebase that no one wants to work on tomorrow.
wpetersonover 5 years ago
This article is dangerous in romanticizing the “not invented here” culture at many big tech companies and seems rooted more in the 90s than present day.<p>The world of open source tooling and easily re-usable SAAS offerings means everyone has access to the best tools, whether you’re a small startup or a big company.<p>Anyone who longs for internal, corporate tooling baffles me when they can use things that actually have polish, user experience and likely better implementations under the hood.<p>Companies should spend their time&#x2F;energy building things unique to their problem domain, not weak also-ran corporate tooling.
评论 #22279256 未加载
评论 #22279370 未加载
评论 #22281064 未加载
评论 #22279515 未加载
vermootenover 5 years ago
I&#x27;m very disappointed if I move from a company that uses macs, slack, Confluence to PCs, MS Teams (horrible) and SharePoint (worse).
评论 #22281621 未加载
i386over 5 years ago
If you’re not building complicated new systems and just gluing things together, you’re not doing engineering? 1) definitely gate keeping 2) good engineering is about what not to build as much as it is what to build.
评论 #22279449 未加载
评论 #22278840 未加载
评论 #22278928 未加载
bgdnyxbjxover 5 years ago
This topic is one of the primary reasons I enjoy working at MS these days.<p>The tech stack is full of OSS or industry standard tools, not a bunch of internal NIH things.<p>My current stack is: React, Node, Kubernetes, Linux (for dev and deploy), Git for sc, GitHub, vs code.<p>I can’t even think of some internal tool that I depend on at the moment.
评论 #22281108 未加载
评论 #22281364 未加载