Salesforce, Inc. is an American cloud-based software company. It provides customer relationship management (CRM) software and applications focused on sales, customer service, marketing automation, analytics, and more.
I learned that my whole team is kind of new (Salesforce acquired this product), and they have just started contributing to the core platform. There are currently a lot of approvals necessary to merge front-end code into the system. This is rough as there's many epics connected to front-end work, and there is not a single senior person in the team which can take charge of looking into the high level architecture, following best practices, and doing better planning to release the code to prod.
I am the only full-stack Staff engineer here, and this is why my EM wants me to create a master front-end tech spec for the team. As an example of something this doc can cover: At Salesforce, there are multiple ways to communicate with the back-end API, each of which has their pros and cons but that information is scattered - We can consolidate that info into this doc.
Given that I haven't written any front-end code here at Salesforce, this task seems hard and I'm unsure how to do this without looking stupid.
At a previous company, a friend had an exceptional mentor who helped him climb from mid-level to senior engineer in 1.5 years. I’ve struggled to find a mentor of similar caliber. What advice do you have for finding a good mentor?
It's been hard for me to draw the line between work and life with their current involvement. Here's some examples:
I also have calls with a team in a very time zone, stretching out my workday and making it start pretty early and end pretty late. Any ideas on how I can improve this situation?
There's too much work on my plate, which is made worse by the nature of our team's product:
What can I do to make things more doable?
I’m married with two kids. It’s important that I spend time with my family, while also doing well in my career. Do you have thoughts on growing my career without burning the midnight oil?
Knowing that, how should I tailor my career path - What companies should I work for and what skills should I get to set myself up for success against this goal? Should I continue working at Salesforce or should I go work for a different company?
I have realized that I need a very high level overview of the current system and what other systems it communicates with. I have no idea on how to do it; I'm currently planning to have a meeting with my EM.
I have access to the Quip, Google Drive, and some brown bag sessions. I have watched a few of them, but it all seems very fragmented. After I figure all this out, I plan to create a doc which can help others better in the future.
I am the only experienced Full Stack developer in the team and I felt that the management got a bit excited when they found out. For the first week I was asked to represent my team to the UI review committee to get the UI approval, I had little or no background of the feature but it was kind of rushed out.
Second week, I was told to write the design document of a feature which I was not aware of. I started digging deeper into it, but after 3-4 days I was told there is some other team who is working on something similar so I should stop working on it.
Third week, I was told to again start working on it but then was told to put it on hold. Within the same week I was also told to write the Engineering document for the FE development for the team, this was a bit surprising for me seeing there is almost everything custom at SF, I felt I needed some time to understand the ecosystem, it is the work in progress.
I'm a relatively new engineer at Salesforce (been here just ~4 months), and I'm having trouble clearly understanding my expectations.
What's the ideal ramp-up/onboarding strategy for a Staff engineer at a Big Tech company like Salesforce; in particular, what should the first 3-6 months look like? Are there any specific artifacts you would expect such an engineer to have produced during this time?
I was assigned a P1 bug, and when I started to dig deeper into it, I found out that actual code was written by some other team and we have just used that code/object to build a small feature. I got a bit lucky that someone in my team told that the team ‘A’ owns that code/object. I was given a POC, but it turns out that they have left that team. I would like to have a POC to close out this bug.
For additional context: It is still not clear if it's the feature or the bug that's broken, that’s why we need to get clarification from the other team. Here's a high-level example to make things more clear: There is an object named "Product" which is a generic one, team ‘A’ built another object called "Product Category", and we added a field to that object. Now unless I ask some senior folks in my team it is really hard to understand who owns "Product Category".
Given all these unknowns, how can I navigate this situation and make sure this bug is resolved properly?
For example, this week I was told to work on adding a field to some legacy entity which is not recommended (i.e. you need to have a solid business justification). The whole process is very lengthy, requiring many layers of approval just for this single field change. How can I find the scope appropriate to my level?
Before I was at Amazon in Cambridge, England. I came to enjoy the quality of life there, but recent changes made me switch to Salesforce in India. The work-life balance here is good, but even as a staff engineer, I’m having trouble finding scope - I own just a small piece of the overall system my team’s responsible for.
I was able to recently get an offer from Spotify for a UK office, which expires in a month. However, it’s for Software Engineer 2, a level below their senior level. This isn’t ideal as one of my goals is to be a Staff engineer at a reputable company.
Should I stay at Salesforce where I’m already a Staff level and have solid work-life balance or move back to the UK to work for Spotify?