I haven't seen this design in practice using MongoDB Atlas or Compass, but would hope for an "Are you really sure?" confirmation in an admin UI.
117 karma · joined April 10, 2012
Former founding engineer at Yahoo! Australia & NZ, co-founder of an online DVD rental startup, and frequent startup collaborator.
I've answered more than a few questions on Stack Exchange (https://stackexchange.com/users/529514/stennie?tab=accounts) and contribute to some open source projects in my spare time: https://github.com/stennie.
Disclaimer: opinions and technical advice given here are my own and do not represent an official statement by any past, present, or future employer.
I haven't seen this design in practice using MongoDB Atlas or Compass, but would hope for an "Are you really sure?" confirmation in an admin UI.
Submitting a PR allows others in the community to apply your patch (or incorporate into a forked version of the project) if the PR doesn't get merged or deleted. From a project maintainer's point of view, significant patches can be difficult to test & review, and merging a PR implies accepting the long term maintenance of those changes. I've left some promising PRs for much longer than I'd prefer to because of factors like time to review and the risk of merging code which may not have adequate tests. If an open PR attracts some community interest or discussion, that can give project contributors a helpful signal for prioritising.
If a PR is featured somewhere, this can be an opportunity to raise your profile and perhaps introduce those inquiring users to something you can benefit from more directly. If I get direct emails about a PR or project I contribute to, I try to politely point those users to the right channel (eg raise a GitHub issue) and ideally a contributor guide so they can be empowered to contribute directly. This may not be a straightforward reflex to develop, but I think responding with "This is a volunteer effort -- here's how you can help with docs, testing, or code" is a better viewpoint than "Ugh, more entitled users". I've been pleasantly surprised to see this approach turn some agitators into useful contributors.
If a project has very niche dependencies (like requiring API access to a satellite ground station), there can still be an audience and they may be even more motivated to collaborate on your open source project. I feel like this may have the best upside in terms of potential ratio of users to collaborators.
I think your last example is the most challenging. If you are concerned about someone else benefiting by stealing or repackaging a project you have openly shared, it would be best to keep that effort private. Compliance with open source licenses (or the spirit of open collaboration) requires ethics that are not universal across developers, companies, and countries. This problem isn't unique to open source (commercial licenses also don't prevent piracy), but is a harder blow when you are personally affected.
Hobby projects and open source contributions are evidence of patterns of collaboration and commits, but may not be indicative of one's typical (or best) work. There are also many reasons why a great software engineer may not have a public activity profile.
The majority of my public commits are scratching itches on open source projects, and are very opportunistic depending on other life and work commitments at the time. Code may not always be pristine, but I can probably rationalise why I took a certain approach (following existing code style, hacking for my own use, actually aiming for quality and performance, ...).
As a hiring manager, I'm also OK if candidates want to do something with their personal time that doesn't involve committing to public repos :).
Those differences may be fine for some use cases, but definitely compromise portability if you want to run or test the same application with a database deployment on GCP, AWS, or your own infrastructure. The lowest common denominator is based on Cosmos DB's underlying limits and features (not a MongoDB server feature set): https://docs.microsoft.com/en-us/azure/cosmos-db/concepts-li....
One secret I would tell any engineers considering management: "management is a career change, not a promotion". Charity Majors has some excellent blog posts on this, including the Engineer/Manager Pendulum: https://charity.wtf/2017/05/11/the-engineer-manager-pendulum....
Becoming a manager because you think that is the only ladder to climb is definitely the wrong choice. I think a great manager is also a leader who takes an active interest in the motivation, growth, and outcomes of their team. If a management team worked the way you describe (manager's managers run the show and broker deals with their peers for micromanaged promotions), that would be an extremely dysfunctional environment.
In my experience it is always the direct manager who recommends someone for promotion rather than the next level up (although your manager's manager likely has final approval on budget). As a manager, I support and coach my team toward their career growth aspirations with regular performance & growth conversations. I also try to ensure my direct manager has visibility on the state of the team, but ultimately they are expected to be looking at a bigger picture and trust that I am taking care of my team.
I think the ownership action in extreme cases is best summarised by the simulation in WarGames (1983): "A strange game. The only winning move is not to play.". There is lots of interesting game theory (which is probably a digression here), but the Prisoner's Dilemma is a fun starting point if anyone is interested in an academic side trip: https://plato.stanford.edu/entries/prisoner-dilemma/.
I never realised how many friends I had on the internet, and at first I gently replied to a few that I wasn't the `<firstname>` they were looking for. This was a more utopian era where email spam was in a more infant stage, and most of these friends were real people trying to connect rather than bots and scammers. However, there were a lot of new users joining Y!Mail and apparently quite a few were looking for me.
Some of my new friends were pretty insistent (and oversharing), so it didn't take long for me to abandon the OG forwarding address and associated nostalgia. So many friends, so little time for real conversation.
I tried refreshing the README.md expecting to see other testimonials, and I'm seeing the same one every time (from tinyCoder32 on Apr 6). I noticed the suggestion of adding noCache=true to the image path (which I presume means "?noCache=true"), but am still seeing the same testimonial. I also tried force refreshing my browser cache.
A few suggestions:
- A default README example without caching (and with multiple testimonials) would be a better demo of what your project can be used for.
- Consider adding a JS embed option with links to the original GitHub comments for context. The demo image with "It worked, thank you so much for the help." would be a more compelling testimonial if I could see the original discussion to understand who is being thanked and what they actually did.
If you want to make the suggestion of adding video to a meeting, think about what the benefits might be for your team and whether there may be more suitable occasions to do so (eg sprint planning or a meeting later in the day). If your coworkers understand more of the Why behind your request they will hopefully be more willing to give this a try. They may also have valid reasons for not wanting to use video too often (camera shy, limited bandwidth, messy workspace, meeting is too early/late in their day, etc).
Another idea that might have less resistance versus changing an existing meeting would be to try starting something new (and optional), like a Tech Talk series. We have occasional internal Tech Talks, where the goal is short technical presentations or discussions (about half an hour) over one of our lunch breaks. Sometimes there are visiting presenters from other offices or companies. These sessions are great if you want to learn more about job-relevant tech that someone is learning, using, or building.
If your goals include fostering more social interaction and connection with the team, you could also try suggesting a format that more directly achieves that. For example, we started a Share & Learn series where anything is on-topic except work. The concept is to facilitate directed discussion about a personal passion topic. We plan for an hour (usually at the end of the day, once a month) with up to 3 speakers and around 15 minutes per speaker plus questions (delivery format up to the speaker). This has resulted in some great talks/demos/discussions which helped us learn more about our coworkers (and beekeeping, craft beer, technical interviews, video game mods, DNS, knots, ballet, ...). We also open those up to everyone in the office and encourage everyone to participate (irrespective of their department/org).
Some companies or teams may not be open to these sort of ideas, but circling back to your original question about trying to evaluate company culture before you accept a job... you can ask about these aspects in interviews as well. What does your team do to keep up with new tech? What regular social or tech sessions does the team have? Is there a budget for team lunches or social activities and how often do these happen?
An outcome may be interpreted as stupidity, but I've seen otherwise smart individuals make poor decisions because of extrinsic motivation like meeting the expectations of their manager in order to succeed at (or maintain) their job, aiming for personal incentives, or avoiding consequences. If the extrinsic motivation is not (or cannot be) shared, actions or goals may appear to be irrational (or stupid).
Interviewing is a discussion of fit for both you and the employer, so you should feel free to ask questions (and they should allow time for this in the interview process). I would try to determine how committed the interviewers are to adhering to the company's values and mission, or if those are just words for the careers page.
For example: What is your company's mission statement? Does your team have a mission statement or vision? What is your favourite company value, and why? How do your company values factor into decision making or planning? Tell me about a recent decision influenced by your company values? If good values are embedded in the company culture, I would expect some passion and examples of their influence.
My company tries to be strongly aligned to our core values, and we have value-specific interview questions to be transparent about how those values are applied. For example, for our "Be Intellectually Honest" value one of the interview discussion points might be "Can you describe a time your manager took a stance or action that you didn’t agree with, and how you responded to it.". The spirit & intention of this core value is that we have courage in our convictions but work hard to ensure biases or personal beliefs do not get in the way of finding the best solution. This is not a pass to use candor as an excuse to make kind or unproductive remarks.
I think the specific examples you've mentioned (video during meetings, agenda/format for stand-ups) are more about connection and collaborative workflow than culture. I expect companies will probably have a core value that maps to collaboration, so you could ask how that value is reflected in team activities. Daily stand-ups in scrum are normally quick updates rather than social chatter: what did you work on yesterday, what are you working on today, any blockers. Ideally there will be other team activities that encourage more social interaction (share & learn, beverage o' clock, etc).
Personally I would encourage video-on for synchronous stand-ups and sprint planning. as otherwise it is challenging to feel engaged in the discussion. However, if your team isn't doing this you should be able to have an open conversation on why that is the case. Perhaps there is some underlying issue (video is distracting or unreliable for some) that you haven't considered. Great company culture is owned and shaped by the employees, so you should feel empowered to help make your company culture better.
If there is enough demand, I hope that it will be possible to add PS5 support for emulating older downloadable games purchased from the PlayStation Store.
I'm personally more inclined to pay (again) for a quality remastered version on a next gen console. I've enjoyed replaying some of the PS4 remastered games with higher definition graphics (Last of Us, God of War 3, CoD: Modern Warfare, Uncharted Collection, ...) and I still aim for Platinum trophies for my favourites.
Sony has also said "We believe that the overwhelming majority of the 4,000+ PS4 titles will be playable on PS5" (https://blog.us.playstation.com/2020/03/18/unveiling-new-det...) which hopefully covers most of the games I've bought in the last 6 or so years.