Mern Stack Development Training by Experts

;

Our Training Process

Mern Stack Development - Syllabus, Fees & Duration

Module 1: Introduction to React

  • What is React?
  • Why React?
  • React version history
  • React 16 vs React 15
  • Just React – Hello World
  • Using create-react-app
  • Anatomy of react project
  • Running the app
  • Debugging first react app

Module 2: Templating using JSX

  • Working with React. create Element
  • Expressions
  • Using logical operators
  • Specifying attributes
  • Specifying children
  • Fragments

Module 3: About Components

  • Significance of component architecture
  • Types of components
  • Functional
  • Class based
  • Pure
  • Component Composition

Module 4: Working with state and props

  • What is state and it significance
  • Read state and set state
  • Passing data to component using props
  • Validating props using prop Types
  • Supplying default values to props using default Props

Module 5: Rendering lists

  • Using react key prop
  • Using map function to iterate on arrays to generate elements

Module 6: Event handling in React

  • Understanding React event system
  • Understanding Synthetic event
  • Passing arguments to event handlers

Module 7: Understanding component lifecycle and  handling errors

  • Understand the lifecycle methods
  • Handle errors using error boundaries

Module 8: Working with forms

  • Controlled components
  • Uncontrolled components
  • Understand the significance to default Value prop
  • Using react ref prop to get access to DOM element

Module 9: Context

  • What is context
  • When to use context
  • Create Context
  • Context Provider
  • Context Consumer
  • Reading context in class

Module 10: Code-Splitting

  • What is code splitting
  • Why do you need code splitting
  • React lazy
  • Suspense
  • Route-based code splitting

Module 11: hooks

  • What are hooks
  • Why do you need hooks
  • Different types of hooks
  • Using state and effect hooks
  • Rules of hooks

Module 12: Routing with react router

  • Setting up react router
  • Understand routing in single page applications
  • Working with Browser Router and Hash Router components
  • Configuring route with Route component
  • Using Switch component to define routing rules
  • Making routes dynamic using route params
  • Working with nested routes
  • Navigating to pages using Link and NavLink component
  • Redirect routes using Redirect Component
  • Using Prompt component to get consent of user for navigation
  • Path less Route to handle failed matches

Module 14: Immutable.js

  • What is Immutable.js?
  • Immutable collections
  • Lists
  • Maps
  • Sets

Module 17: Unit Testing

  • Understand the significance of unit testing
  • Understand unit testing jargon and tools
  • Unit testing react components with Jest
  • Unit testing react components with enzyme

Module 18: Web pack Primer

  • What is web pack
  • Why web pack
  • Install and setup web pack
  • Working with web pack configuration file
  • Working with loaders
  • Working with plugins
  • Setting up Hot Module Replacement

Module 19: Isomorphic React

  • What is server-side rendering (SSR)?
  • Why SSR
  • Working with render To String and render To Static Markup methods

Syllabus -> React JS
This syllabus is not final and can be customized as per needs/updates
IT Courses / Internship

Module 1: Introduction to Node.js

  • What is Node.js
  • Features of Node.js
  • Concept
  • Where to fit and not fit
  • Event-Driven programming style
  • What is Asynchronous

Module 2: Installation / Setup

  • Local environment setup
  • Node.js runtime
  • Download source code
  • Installation on OS
  • Verify

Module 3: Node Package Manager

  • Install module by NPM
  • Global vs Local setup
  • Update Module
  • CRUD Module

Module 4: Express Framework

  • What is Express
  • Setup Express
  • Request And Response
  • Handling Routes
  • Route Middleware
  • Objects
  • Cookies Management
  • File upload
  • HTTP methods

Module 5: Buffers and Streams

  • What is buffers and Streams
  • Benefit of Streams over buffers
  • Create / Write / Read operation on Buffers
  • Process on Buffers
  • Read / Write data by Streams
  • Pipeline
  • Chaining Stream

Module 7: REST API

  • RESTful Architecture
  • HTTP URI and Methods
  • RESTful web services
  • Expose solution as API
  • Best practice for REST API solution

Module 8: Callback

  • What is Callback
  • Benefit of Callback
  • Asynchronous communications
  • Block and Non-Blocking
  • Standard Callback pattern
  • Async Flow control Library
  • Executing in parallel

Module 9: Events

  • What is Events
  • Events types
  • Event Emitter API
  • Multiple event listeners
  • Event emitter pattern
  • Class methods
  • Event Loop
  • Blocking Event Loop
  • Escaping Event Loop

Module 10: Connecting with Database

  • Introduction of MySQL
  • Connect with MySQL
  • Introduction of MongoDB
  • Features of MongoDB
  • Connect with MongoDB
  • Defining a schema
  • Defining a Model

Module 11: External Processes and Services

  • What is processes
  • Spawning Child process
  • Create and kill processes
  • Building with HTTP Severs
  • HTTP requests
  • Secure HTTP Server

Module 12: External Processes and Services

  • Using Test Runner
  • Using Assertion Testing Module
  • Built-in Debugger
  • Console log
  • Node Inspector

Syllabus -> Node JS
This syllabus is not final and can be customized as per needs/updates
IT Courses / Internship

Module 1 : INTRODUCTION EXPRESS JS

  • The model-view-controller pattern
  • Defining Jade templates
  • Configuring Express
  • Postman configuration
  • Using REST
  • JSON Data
  • Reading POST data
  • CRUD operations
  • Adding middleware

Module 2 : EXPRESS JS WITH MONGODB AND SQLITE

  • Connecting to RDBMS and Mongodb databases
  • Performing CRUD operations
  • Module 3 : SOCKET.IO, THE FRONT-END, AND A CHAT APP

    • Getting Started
    • Adding Socket.io To Your App
    • Exploring The Front-end
    • Sending Live Data Back & Forth
    • Creating The Front-end UI
    • Showing Messages In App
    • Working With Time
    • Timestamps
    • Show Message Time In Chat App
    • Chat application Project

    Module 4 : INTRODUCTION TO TASK MANAGERS WITH UNIT TESTING

    • Working with gulp
    • Working with grunt
    • Working with unit and E2E testing

    Module 5: LEARNING EXPRESS ROUTES

    • starting a server
    • Writing your first route
    • Sending a response
    • Macthing route paths
    • Getting a single expression
    • Setting status codes
    • Macthing longer paths
    • Other HTTP methods

    Syllabus -> Express JS
    This syllabus is not final and can be customized as per needs/updates
    IT Courses / Internship

    Module 1: Introduction to NoSQL

    • What Is NoSQL?
    • Why NoSQL databases are required
    • Types of NoSQL Database
    • NoSQL vs SQL Comparison
    • ACID & BASE Property
    • CAP Theorem
    • Benefits of NoSQL databases
    • Installation
    • Start and Stop the MongoDB process

    Module 2: MongoDB Architecture

    • Document, Collection, Databases
    • JSON and BSON
    • Storage Engines
    • Read Path
    • Journaling
    • Write Path
    • Working Set
    • Capped Collection
    • Oplog collection
    • TTL Index
    • GridFS

    Module 3: CRUD Operations

    • MongoDB Data Types
    • Inserting, Update, Deleting the documents
    • Querying the documents
    • Bulk insert operation
    • Updating multiple document
    • Limiting documents
    • Filtering documents

    Module 4: Schema Design and Data modeling

    • Dynamic Schema
    • What is Data modeling?
    • RDBMS and MongoDB Data modeling difference
    • Embedding Document
    • Reference Document

    Module 5: Indexes

    • Index concepts in MongoDB
    • Types of indexes
    • Indexes and its use cases
    • Creating Indexes
    • Managing Indexes
    • Index strategies

    Module 6: Database Administration in MongoDB

    • Database status
    • Troubleshooting issues
    • Current Operations
    • Rotating log files
    • Users and Roles
    • Copy and Clone database
    • DB and Collection Stats
    • Explain plan
    • Profiling
    • Changing configuration files
    • Upgrading the database

    Module 7: MongoDB: Backup and Security

    • Concept of backups
    • mongoexport/mongoimport
    • mongodump/mongorestore
    • Oplog backups
    • LVM Backups
    • Backups using MMS/Ops Manager
    • Purpose of security
    • Authentication and authorization
    • Role based access control

    Module 8: Replication in MongoDB

    • Concept of replication
    • ReplicaSet member roles
    • Voting and Electing primary
    • Role of Oplog in replication
    • Read and Write Concern
    • Arbiter,Hidden and Delayed replica node
    • Priority settings
    • Replicaset nodes health check
    • Concept of resyncing the nodes
    • Rollbacks during failover
    • Keyfile authentication

    Module 9: MongoDB Scalability

    • Concept of Scalability
    • Sharding concept
    • Shardkey and Chunks
    • Choosing shardkey
    • Sharding components
    • Types of Sharding
    • Balanced data distribution
    • Sharded and Non-sharded collection
    • Sharded Replicaset
    • Tag aware sharding

    Module 10: MongoDB Monitoring and Other Tools

    • MMS Manager
    • Ops Manager
    • Mongo utility commands
    • Mongo developer tools
    • MongoDB Atlas
    • MongoDB client drivers

    Syllabus -> MongoDB
    This syllabus is not final and can be customized as per needs/updates
    IT Courses / Internship
     
    10000+
    20+
    50+
    25+

    Mern Stack Development Jobs in San Diego

    Enjoy the demand

    Find jobs related to Mern Stack Development in search engines (Google, Bing, Yahoo) and recruitment websites (monsterindia, placementindia, naukri, jobsNEAR.in, indeed.co.in, shine.com etc.) based in San Diego, chennai and europe countries. You can find many jobs for freshers related to the job positions in San Diego.

    • mern stack developer
    • mern stack
    • mern stack programmer
    • reach js developer
    • node js developer
    • express js developer
    • mern stack expert
    • mern stack fresher
    • full stack developer
    • mongo db

    Mern Stack Development Internship/Course Details

    Mern Stack Development internship jobs in San Diego
    Mern Stack Development By the end of this hands-on intensive training course. Use Express, a lightweight HTTP server framework developed on top of Node. The best MongoDB online Training Institutes in Dubai . e. Complete, updated list. js services are getting more popular, so that they have something new all the time. Node. You can experiment with database structures that you just wouldn’t be able to attain in SQL and other relational options. The CRUD operations are associated with several additional options. Its NoSQL database working with data very efficiently.

    Meet a Few of our Industry Experts 🚀 Your Pathway to IT Career

    Rahul

    Mobile: +91 89210 61945
    Location: Bengaluru, Online (San Diego)
    Qualification: Btech

    Experience: Core java manual testing automation testing selenium testng restassured cucumber bdd mysql | Resume for   more..

    Sandeep

    Mobile: +91 9895490866
    Location: Uttarakhand, Online (San Diego)
    Qualification: Pursuing btech

    Experience: ethical hacker penetration tester video editor ms office knowledge advanced knowledge in os like linux windows etc  more..

    Shubham

    Mobile: +91 98474 90866
    Location: Madhya Pradesh, Online (San Diego)
    Qualification: B.tech ( computer science (

    Experience: Experience 2 years at Infosys Ltd Skills : C C++ python and SQL API creation and testing Finacle  more..

    Noor

    Mobile: +91 91884 77559
    Location: Delhi, Online (San Diego)
    Qualification: digital medial and design, 1st year

    Experience: I'm a passionate designer with a keen eye for detail and a creative flair My skills encompass various design disciplines  more..

    Raju

    Mobile: +91 91884 77559
    Location: Bhubaneswar , Online (San Diego)
    Qualification: Btech

    Experience: Python django developer Application for Python Django  more..

    Mithila

    Mobile: +91 9895490866
    Location: Coimbatore, Online (San Diego)
    Qualification: B.E (ECE)

    Experience: Basic C C++ HTML python As a fresher I don't have a work experience but opportunity once come I'll give  more..

    Ankita

    Mobile: +91 9895490866
    Location: Karnataka, Online (San Diego)
    Qualification: M.phil

    Experience: Leadership facilitation content development communication critical thinking  more..

    Nupura

    Mobile: +91 98474 90866
    Location: Maharashtra, Online (San Diego)
    Qualification: Masters in Science

    Experience: Senior Quality Analyst with 13 years and 6 months of IT experience and 6 Months of experience in Product Analysis  more..

    Pratik

    Mobile: +91 91884 77559
    Location: Navi mimbai, Online (San Diego)
    Qualification: BE

    Experience: Maual Testing Automation Testing API testing 1 2 years of experience in manual testing in eLearning domain   more..

    Angad

    Mobile: +91 89210 61945
    Location: Gujarat, Online (San Diego)
    Qualification: Web developer

    Experience: Web developer | Resume for   more..

    Rohit

    Mobile: +91 91884 77559
    Location: Jharkhand, Online (San Diego)
    Qualification: Diploma in computer science and engineering

    Experience: Morning sir Myself Rohit Kumar Marandi student in government polytechnic Adityapur and my branch is Computer Science And Engineering It's  more..

    vidya

    Mobile: +91 91884 77559
    Location: Tamil Nadu, Online (San Diego)
    Qualification: Msc IT

    Experience: manual testing c c++ java istqb  more..

    karthikeyan

    Mobile: +91 8301010866
    Location: Salem, Online (San Diego)
    Qualification: Bachelor of Engineering

    Experience: C C++ ASP NET python SQL HTML css Java  more..

    Manas

    Mobile: +91 98474 90866
    Location: Maharashtra, Online (San Diego)
    Qualification: B.tech (computer science and engineering)

    Experience: Skills: 1 Programming Languages: Proficient in C++ and JavaScript 2 Frontend Development: Skilled in HTML CSS React Redux Bootstrap Tailwind  more..

    Payal

    Mobile: +91 9446600368
    Location: Gujarat, Online (San Diego)
    Qualification: Master in computer engineering

    Experience: -Working in manual testing -1 year and 9 months I have experience  more..

    Trupti

    Mobile: +91 89210 61945
    Location: Karnataka, Online (San Diego)
    Qualification: B. Sc

    Experience: Hardware and networking |   more..

    Karthi

    Mobile: +91 89210 61945
    Location: Tamil Nadu, Online (San Diego)
    Qualification: B.E Computer science and engineering

    Experience: I have 1 3 years of experience in software testing where I performed both manual and automation testing in my  more..

    Prajakta

    Mobile: +91 98474 90866
    Location: Maharashtra, Online (San Diego)
    Qualification: Computer Science engineering

    Experience: I have a basic knowledge of Java Sql Html css Javascript and I am currently learning react js which is  more..

    Priyank

    Mobile: +91 8301010866
    Location: Gujarat, Online (San Diego)
    Qualification: Bachelor Degree

    Experience: Expertise in design software such as Adobe Creative Suite (Photoshop Illustrator InDesign) Corel draw Filmora tools Knowledge of print processes  more..

    Chandan

    Mobile: +91 91884 77559
    Location: Karnataka, Online (San Diego)
    Qualification: B E

    Experience: I know Java Sql Manual testing and Jira tool and Automation testing (Java Selenium) and I have a 6months experience  more..

    Guruprasad

    Mobile: +91 89210 61945
    Location: Bangalore, Online (San Diego)
    Qualification: BE

    Experience: Manual testing api testing automation testing | Resume for   more..

    SRAYASI

    Mobile: +91 9895490866
    Location: West Bengal, Online (San Diego)
    Qualification: MBA

    Experience: Experience is of 8 years Skils are:-c c++ Java python laravel php  more..

    Abhijeet

    Mobile: +91 98474 90866
    Location: indore, Online (San Diego)
    Qualification: MCA

    Experience: python Django Flask HTML CSSApplication for Python Django  more..

    Rohit

    Mobile: +91 8301010866
    Location: Pune, Online (San Diego)
    Qualification: MCA

    Experience: SDLC STLC BBT test cases API testing Selenium | Resume for   more..

    Shraddha

    Mobile: +91 91884 77559
    Location: Karnataka, Online (San Diego)
    Qualification: BE

    Experience: Embedded testing AWS cloud practitioner certified test management STB OTT testing  more..

    Saurabh

    Mobile: +91 91884 77559
    Location: Maharashtra, Online (San Diego)
    Qualification: Graphic designer

    Experience: I have hands on experience on Photoshop illustrator Corel draw indesign 6 years and I have also hands on experience  more..

    Shadab

    Mobile: +91 9895490866
    Location: Mumbai, India, Online (San Diego)
    Qualification: High School

    Experience: Working with php wordpress and all related technologies from 10 years   more..

    Naveen.k.k

    Mobile: +91 9895490866
    Location: Haryana, Online (San Diego)
    Qualification: 12th

    Experience: I’m a Front end developer who constructs the frontend piece of sites and web applications — the part clients see  more..

    Afiya

    Mobile: +91 91884 77559
    Location: Kerala, Online (San Diego)
    Qualification: Masters

    Experience: I possess strong communication and organizational skills which enable me to explain complex concepts clearly and engage students effectively My  more..

    Milli

    Mobile: +91 89210 61945
    Location: Jharkhand, Online (San Diego)
    Qualification: MBA HR

    Experience: I have 10 years of work experience in various organisations in Human Resource I am passionate about teaching and learning  more..

    REHAN

    Mobile: +91 98474 90866
    Location: Chhattisgarh, Online (San Diego)
    Qualification: currently pursuing 12th

    Experience: As a graphic designer with 2 years of experience I specialize in creating visually compelling designs for various media My  more..

    Puli

    Mobile: +91 9895490866
    Location: Telangana, Online (San Diego)
    Qualification: Degree

    Experience: 3 years in graphic design and having knowledge in uUI UX Desgin  more..

    Lokesh

    Mobile: +91 91884 77559
    Location: Sikar, Online (San Diego)
    Qualification: Btech perseuing

    Experience: Expert learning in react js and experienced in soyuz technologies gurugram  more..

    Seema

    Mobile: +91 8301010866
    Location: Maharashtra, Online (San Diego)
    Qualification: BE computer engineering

    Experience: I have completed 6 month internship at N Infinity & also completed full stack java developer internship from analytic learning  more..

    Savad

    Mobile: +91 91884 77559
    Location: Kerala, Online (San Diego)
    Qualification: Degree

    Experience: Proficient in Adobe Photoshop Illustrator InDesign Canva video editing basics branding typography and social media design   more..

    MUHAMMED

    Mobile: +91 91884 77559
    Location: Kerala, Online (San Diego)
    Qualification: Bachlors

    Experience: I have hands-on experience in developing modern web applications using React js and Redux js for state management alongside Tailwind  more..

    Shahbaz

    Mobile: +91 8301010866
    Location: Delhi, Online (San Diego)
    Qualification: BTech

    Experience: NMAP Penetration testing Owasp top 10 Ethical Hacking  more..

    Divyadharshini

    Mobile: +91 9895490866
    Location: Chennai, Online (San Diego)
    Qualification: BE - CSE

    Experience: Skillls : html css javascript python Experience : Worked 5 months in the role of Full stack developer at Black  more..

    Atufa

    Mobile: +91 9446600368
    Location: Gujarat, Online (San Diego)
    Qualification: Masters

    Experience: LS ● Cryptography Information Security Policies Digital Forensics Penetration Testing Network Security Cloud Threat Intelligence Incident Response Risk Assessments Intrusion  more..

    Hursh

    Mobile: +91 98474 90866
    Location: Maharashtra, Online (San Diego)
    Qualification: Pursuing btech cse 4th year

    Experience: SKILLS Languages: Python Java Javascript C C++ SQL PHP Developer Tools: VS Code Pycharm intellij idea Git Github Gitlab Android  more..

    Ashin

    Mobile: +91 98474 90866
    Location: Kerala, Online (San Diego)
    Qualification: Diploma

    Experience: Python Django psql html css tailwind css git drf react mongodb etc   more..

    Neha

    Mobile: +91 9446600368
    Location: Maharashtra, Online (San Diego)
    Qualification: M.Sc organic chemistry

    Experience: Good communication skills lesson planning curriculum development classroom management exam preparation also have computer knowledge  more..

    Ragul

    Mobile: +91 89210 61945
    Location: Tirupur, Tamilnadu India, Online (San Diego)
    Qualification: BBA ( Computer Application)

    Experience: I have completed certificate web development full stack Python professional course I have attended internship I learning the overview concept  more..

    Shincy

    Mobile: +91 91884 77559
    Location: Kerala, Online (San Diego)
    Qualification: Mca

    Experience: I am good in python Django flask asp net Java HTML css js bootstrap MySQL oracle postgresql   more..

    Yogesh

    Mobile: +91 89210 61945
    Location: Meerut, Online (San Diego)
    Qualification: B.C.A

    Experience: I have 3 years expericne As a role of wordprss developer  more..

    Lortina

    Mobile: +91 91884 77559
    Location: Karnataka, Online (San Diego)
    Qualification: B.Sc.I.T.

    Experience: As I don't hve experience in testing i want to work for it and I know how it works  more..

    Tejas

    Mobile: +91 91884 77559
    Location: Surat , Online (San Diego)
    Qualification: T.y.b.com

    Experience: I have 7 years experience in graphic design and video editing and 1 year experience in ui ux design   more..

    praveen

    Mobile: +91 9895490866
    Location: vijayawada, Online (San Diego)
    Qualification: b.tech

    Experience: I have 4 years experience in graphic designers Skills: Adobe Creative Suite: Proficiency in software such as Photoshop Illustrator and  more..

    sidharth

    Mobile: +91 98474 90866
    Location: Kerala, Online (San Diego)
    Qualification: Btech

    Experience: python django drf reactjs html css tailwindcss aws ec2  more..

    Hari

    Mobile: +91 9446600368
    Location: Andhra Pradesh, Online (San Diego)
    Qualification: B.com , Web technologies, Dip in Graphic Design, DCA, PG DCA, MS.Office

    Experience: Having 8+ years of experience in the field of Web & Graphic Designing Faculty Subjects Handling: HTML 5 CSS 3  more..

    ANUPAM

    Mobile: +91 91884 77559
    Location: Uttar Pradesh, Online (San Diego)
    Qualification: B.tech (computer science)

    Experience: I have experience in flutter dart firebase sqllite API html css bootstrap js dot net mvc SQL In development we  more..

    Jeevaa

    Mobile: +91 9446600368
    Location: Tamil Nadu, Online (San Diego)
    Qualification: B.arch

    Experience: Hii this is Jeevaa I have 3 years of experience in the field of graphic design and I have worked  more..

    Anirban

    Mobile: +91 91884 77559
    Location: West Bengal, Online (San Diego)
    Qualification: BCA 3rd year (Pursuing)

    Experience: **Professional Skills** 1 **Programming Proficiency**: Proficient in various programming languages such as Java Python C++ and SQL with a strong  more..

    Payal

    Mobile: +91 9895490866
    Location: Nagpur, Online (San Diego)
    Qualification: B. E

    Experience: Function testing stlc sdlc | Resume for   more..

    Dhyey

    Mobile: +91 91884 77559
    Location: Gujarat, Online (San Diego)
    Qualification: B.E. computer

    Experience: I have 6 month experienced as Full Stack Developer in which I developed ERP application using Php Mvc and use  more..

    NIKETAN

    Mobile: +91 89210 61945
    Location: Maharashtra, Online (San Diego)
    Qualification: MCS

    Experience: I’m excited to apply for Flutter developer With two years in Flutter I bring robust deployment experience having launched five  more..

    Debiprasad

    Mobile: +91 91884 77559
    Location: Bhubaneswar , Online (San Diego)
    Qualification: B.tech

    Experience: React js next js tailwind css mui bootstrap express js mongodb MySQL react-native  more..

    Madhusudan

    Mobile: +91 8301010866
    Location: Nashik, Online (San Diego)
    Qualification: BE IT 4th year, Diploma in IT

    Experience: python data science artificial intelligence machine learning| Application for Python Data Science Machine Learning Artificial Intelligence  more..

    Kavitha

    Mobile: +91 91884 77559
    Location: Kerala, Online (San Diego)
    Qualification: BA, TESOL

    Experience: I have been teaching English language since 2010 and as being a module developer I can easily create the module  more..

    K

    Mobile: +91 8301010866
    Location: Kerala, Online (San Diego)
    Qualification: Bsc cyber forensic

    Experience: Manual testing types of testing test scenarios test cases SQL core Java and also pursuing automation testing   more..

    Success Stories

    The enviable salary packages and track record of our previous students are the proof of our excellence. Please go through our students' reviews about our training methods and faculty and compare it to the recorded video classes that most of the other institutes offer. See for yourself how TechnoMaster is truly unique.

    Photos of Training / Internships

    Internship/projects in san-diego
    Internship/projects in san-diego
    Internship/projects in san-diego
    Internship/projects in san-diego
    Internship/projects in san-diego
    Internship/projects in san-diego
    Internship/projects in san-diego
    Internship/projects in san-diego
    Internship/projects in san-diego
    Internship/projects in san-diego
    Internship/projects in san-diego
    Internship/projects in san-diego

    Trained more than 10000+ students who trust Nestsoft TechnoMaster

    Get Your Personal Trainer