Corporate Tips

*************************** How to approach task *********************
  • Understand the problem
    • Objective - what are we solving (core issue)
    • What already exists in system
  • Make flowchart (HLD) on how you will be approaching
    • what columns to be added in DB
    • what functions to be made
  • Confirm it with seniors on validity of approach
    • Always think all aspects first before asking or connecting with seniors
    • Make adjustments accordingly
    • Think from your perspective also → if things seem off → think & question it
    • If solving A, creates new task B → first tell situation to seniors and ask how to proceed → maybe B can be assigned to others or to you
  • Divide whole problem into chunks → solve it level wise
    • If have dependency with sales team or others → after completion of each chunk ask for confirmation and adjust code accordingly after each level
  • At each level, stick to DRY
    • create functions wherever possible to reuse it in future
    • If major changes needed → better to create separate file and import from there
    • Keep descriptive names which help others to understand
  • Write code keeping worst cases in mind
    • Something obvious to you may not be obvious to others
    • Test your code thoroughly + Look for edge cases at every line of code introduced
    • Eg - (if system crashed after some steps) or (user switched off phone and didn't get update) → at the end, no inconsistency in data should be present
  • After completion, do add comments like "discussed with akshay, blah blah...."
    • Never believe in words → always keep in writing that discussed on this date with that person and signed off the task
  • NOTE - It is my task to remind others about PR and connected unless fully deployed
**************************************************************************
********************************** Tips **********************************
 Salary Negotiations - first understand trends and rough valuation for that role
 < 4 months of break => No need to justify --> just a normal career break is OK 
₪ > 4 months of break => you were upskilling / taking courses / health issues / working on                                              some idea --> basically doing to improve yourselves
  1. What to ask
    • Can I negotiate the offer ?
    • Besides base pay, what are the other benefits ?
    • What is the outlook for salary raises and promotions?
    • What metrics does company use to evaluate success of an individual ?
  2. What not to ask
    • Don't start directly with salary and benefits ?
    • Never say I am the best
    • Never start sentence with "I want" 
    • Never apologize for negotiations
    • Be polite & humble when rejecting
  3. Step - 1 => Remind your value
    Step - 2 =>Show you have done research and be confident
    Step - 3 => Don't disclose prev. salary + Use range for expected salary
Notice Period - amount of time I must inform company before ending agreement/leaving
 If 30 days notice period and I resign on 1 May → I have to work till May 31
 If new firm asks about notice period my official notice period is 30 days but depending on how things progress in interview, I can resign and request for early release if needed
 Mostly firms prefer people who can join in 15-30 days time period

Resignation Tips don't write email → preferred to talk out with manager first
 Be short and crisp + Don't do false praise + leave on good note (no badmouthing)
 Just convey that you are looking for new challenges & thankful for learning and experience in current firm

Documents needed after resigning and before joining new company
  • Relieving letterconfirms that I have completed my notice period and officially relieved from all my duties → confirms no obligation pending on me
  • Experience Letterproof that I actually worked there
  • Full and Final Settlement (FNF) Statement - breakdown of my final salary 
    • shows any pending leaves/bonus/tax deduction
    • cross check against last pay-slip
  • Form 16-A - TDS summary issued at end of financial year
    • Used to file ITR, claim refund or apply for loans
  • Provident Fund Details - need to know my universal account number, contribution statements, withdrawal or transfer details bcz when join new firm → I need to withdraw or transfer my PF and for that exit must be updated correctly
    • check Portal after 30 days of exit to ensure status is marked as "EXIT"
  • No Objection Certificate (NOC) - confirms that no dues or tasks are pending 
    • If handled sensitive data in firm → NOC adds legal safety if firm raise allegation
  • Non Disclosure Agreement (NDA) - keep a copy of it bcz it helps to understand 
    post-exit obligations and avoid violating any terms unintentionally
  • Ask for Employ Stock Options (ESOP) grant letter and vesting timeline
Important Timeline in Corporate
  • Annual Appraisal Period (March-May) - promotions, salary hikes, role changes or internal recognition → all is decided in this period → managers gather data feedbacks and performance reports  → my visibility matters most in this time
    • keep record of your work, start asking for feedbacks and show growth mindset
    • keep track of numbers like how much revenue generated, % of efficiency improved, hours saved, etc.
  • Best job switch period (Jan-Feb) - new budgets and hiring plans start in this period
  • Q1 budget planning (Jan-March) - road map of year is designed, company set goals and allocate money → volunteer for new projects, show curiosity and pitch smart ideas
  • Midyear review (June-July) - chance to correct mistakes before year ends
    • ask for feedbacks, do self-review and request for checkpoint calls with manager
  • Team reshuffle period (June-Aug) - time when people get promoted or laid off
    • internal movements are easy as new managers come → new chances to grow
    • try to accept projects out of comfort zone + start networking internally
  • Bonus season (Dec-Feb) - bonus mostly based on performances from (April to Dec)
    • Be proactive during meetings + Note all achievements
  • Best vacation period (Nov-Dec) - plan leaves smartly by observing seniors, finish all major deliverables before mid November → can also use this time to upskill
  • Financial year end (March) - everything gets measured → try to finish tasks with speed and precision + communicate status updates regularly + prioritize to close important tasks over new ones + DO NOT disappear even tired 🙃
  • Audit season (Feb-April) - teams are asked for detailed data → sloppy documentation can affect reputation → maintain clean record from Day 1 + double check data entries, timelines and project files + keep communication trails clean
  • End of Q4 wrap-up (Oct-Dec) - last chance to correct mistakes, do self-review and try to volunteer that others don't want → Don't burnout + maintain work-life balance
******************************************************************************************************* Corporate Terms ************************
  • SLO (Service Level Objective) - internal reliability target that tech team aim to meet 
    → If b
    reached, then team need to prioritize work → no direct penalty for customer
  • SLA (Service Level Agreement) - external contract with customer that promise certain level of service → If breached, then may face financial penalty/legal action
    • SLO is mostly stricter than SLA to ensure buffer zone → prevent breach contract
  • Refactor - restructure existing code without changing its behavior to improve readability, performance and scalability → Eg: rename variables, remove duplication
  • White box testing - software testing where tester has knowledge of internal workings, structure and code → white box bcz able to see inside software, like transparent glass
  • Minimum Viable Product (MVP) - most basic version of product that delivers value to customer and provides feedback to company → best way to test idea and improve
  • Two stages in the software design process -
    • High-Level Design (HLD) / architectural design
      • HLD provides an overview of the system architecture. It describes the system’s main components, their functionalities, and their interactions.
      • It is more about the “what” - what are the main modules, what are their responsibilities, and what is the broad interaction between them.
      • intended for stakeholders and non-technical personnel who need to understand the system’s architecture but not the implementation details
    • Low-Level Design (LLD) / component-level design / module-level design
      • LLD, on the other hand, provides a detailed view of the system design. It dives into the specifics of each module/component described in the HLD
      • more about the “how” - how each module will work, how they will interact with each other, including detailed data flow diagrams, database design, etc.
      • Intended for developers and technical personnel who will implement design
**************************************************************************

Comments

Popular posts from this blog

R (programming language)

Latex + Matlab + Jupyter Notebook + Google Colab + Markdown