Engineering Manager - Frontend Platform Team (Developer Experience)
Axel Springer SESenior Software Engineer
SYMPHONY AISenior Frontend Developer
iSummation Technologies Pvt LtdSoftware Engineer
NCERTFrontend Developer
Ideationz Pvt. Ltd.Javascript
Angular
React
Vue.js
HTML5
CSS3 & CSS5
Bootstrap
AWS (Amazon Web Services)
Docker
Kubernetes
AWS
Github Actions
CI/CD Pipeline
APM
Jira
I highly recommend Ashish who was my engineering manager while we were working together at upday. His strong leadership and technical expertise created an environment where I could contribute efficiently to the success of the company. He guided the team and also took care of cross-functional topics to optimize the development workflow.
I am more than sure he will be a great asset to the future teams he will be supporting with his open and caring attitude!
Working closely with Ashish Sharma as my manager has been a privilege, and I am pleased to offer a sincere recommendation. His profound expertise, combined with a sharp problem-solving acumen, consistently takes the team's capabilities to higher levels.
What truly sets Ashish Sharma apart is his emphasis on building personal connections. He goes beyond the professional realm, investing time in understanding team members on a personal level. This not only creates a positive work environment but also establishes a foundation of trust and collaboration.
Under his guidance, I experienced significant development in both my skills and mindset. His encouragement to stretch beyond my comfort zone and his unwavering support were instrumental in my success within the team.
In summary, I highly recommend Ashish Sharma for any technical + leadership role. His unique style, commitment to individual growth, and ability to forge meaningful connections make him an outstanding manager and mentor.
upday.com is the ultimate everyday news app that helps deliver updated curated news by news editors.
Achievements
Samsung News is a mobile application accessed by millions of users that services the news in short form.
The content of the Samsung News application is powered by Axel Springer. So, when the users of Samsung News click on any news, they see a full news page also known as a Level 2 page.
I have led the team to develop this level 2 page web application using Vue3.
First Allegiance as a company in the United States provides property management solutions in the mortgage field.
Achievements
Sure. Hi, Masjid. I will. Okay. I'm Ashish. I originally come from India, and I'm having 8 years of experience building the complex front end applications. I'm having experience with Angular, React, and Vue and HTML CSS. NSCSS, uh, my styling tools and Zest and Cypress. I use it for unit testing and end to end testing and also have experience with TypeScript. On the back end, I have having experience with Node. Js and Express. Js, MySQL, and MongoDB databases. On DevOps, I have experience with AWS cloud infrastructure, Docker and Kubernetes, and GitHub CICD pipeline. Uh, I also have experience with UI and US, uh, UX best practices, and Figma and Adobe are my tools for the for the designing. Apart from that, I also have 2 years of leadership experience. And along that, I I carry 3 major styles of leadership, which is visionary, base setter, and coaching leadership style, which also provides me the opportunity to work, uh, alongside with my, uh, engineers. So I'm, in short, a IC contributor with leadership experience.
Sure. Uh, so there are 2 ways to, uh, check the comparison in JavaScript. Uh, so double equal and triple equal. Double equal checks the value, um, between, uh, between left hand side and right hand side. Uh, for example, if, uh, 1, uh, equal equal, um, string of 1, then it will be true. But when we compare 1 equal equal equal with string of 1 that will be false because we are not just checking the value, but we are also checking the type in this
Sure. So, um, I see HTML as a entry point for any web application where we can include CSS and JavaScript. And we can include JavaScript using the script tag. And, uh, with that, we can combine multiple JavaScript within the HTML. Uh, this is about mostly the vanilla JS. Otherwise, the frameworks SDK care of including the JavaScript uh
Yep. Um, one of the ways to make the code more readable is using the e s six indexes. For example, if you can get rid of the 4 the traditional 4 loop, like I equals 0, I plus plus, all these things, and you can use for each. Apart from that, there are other array methods like map and reduce, which makes the code much more readable and concise, uh, compared to the traditional for loops. So there are best practices for in different ways how to how to write the clean and maintainable code. Um, switch case is also one of the ways to write the, uh, more readable code. And smaller functions and smaller and testable functions are important for the maintainability as well and breaking the code into the smaller units, um, or smaller files, smaller components, are different ways to to write the readable and maintainable code. And one of the other ways is naming convention. So I always try to not provide any guessing names, um, of for example, just writing x equal one. So instead, I would try to write some explanatory names to the
Uh, okay. So there are there are different issues which can occur during the cross browser compatibility. Uh, first, I will talk about the CSS issue. Uh, some of the browsers, uh, have all CSS, uh, properties compatibility and some do not have. Uh, in that case, we have to think about using the different CSS properties of understand the use case, um, and write the proper CSS when the relevant browser does not have any particular, uh, CSS property available over there. Uh, and some of the browsers, for example, as a web can't are having different CSS property. Uh, sometimes, uh, the Firefox might have a different CSS property for the for just for the same same CSS style. So in that case, we have to take care of that. Apart from that, there could be, um, some JavaScript functions which are not available on all the browsers. In that case, we also have to take care of the polyfills so that the code is compatible on different browsers. Some browsers also do not support, uh, JavaScript out of the box. In that case, we have to provide, uh, no script user feedback that the browser is not having a JavaScript. So we we cannot render the application, or the application would not work properly. So there are different, uh, scenarios in in in case of styling, in case of JavaScript, or in case of no JavaScript.
Uh, the time complexity of sorting algorithm in JavaScript is uh, is analog, uh, which is the best time complexity of of the sorting algorithm in
According to me, um, the text should be displayed in blue color. Why is it not Displayed in blue color could be a question because, uh, the CSS is known as the cascade style sheets. So which means the styles have been cascaded from the top to down. And the styles defined on the bottom of any file of, uh, the the precedence line of will take the priority. And in this case, dot text Color blue is after the color red. So it should be displayed as blue. So, Um, just looking at these lines of code, it is, um, difficult to say why it is not displaying
Yes. Um, you clicked on this button. Okay. Yeah. So what is happening here? We have to understand the, uh, when and why, uh, use effect triggers. Uh, and it is being Misunderstood. Like, 2 other cases are being understood probably by most of the developers. And I will talk to about the 3rd case later. So the first 2 cases are when we provide an empty array. In that case, the, um, the use effect will run only once when we are Just rendering the component for the 1st 1st time. And the 2nd use case is passing the variables as a dependency uh, so that the use effect will be triggered as soon as the variables or the state variables has been changed here. But, uh, in this case, we are not passing any dependency error or not passing that 2nd parameter in the use effect, which says that, uh, the use effect will trigger on each and every render. And whenever someone clicks on the button, uh, it rerenders the component, and the use effect is definitely triggered again and which makes it infinitely triggering for this
Yep. Uh, so Jenkins is one of the most popular tools for CICD pipeline. CICD means continuous integration and continuous delivery, our deployment. Um, and in this case, uh, there are other CICD tools, uh, like GitHub Actions, um, CircleCI, um, and there are integrated pipelines in different, GitHub Git hosting tools, like Bitbucket or any GitLab or GitHub. So, um, this helps. This this makes the Developer life very easy, uh, so that it can automate the work. Whenever we make any changes to the code and send it to the remote repository, The GitHub or the any gates based system will understand the new changes. And based on the actions which we have defined in the rules, it will perform, on the deployment. So, for example, if we are having a if if a developer raises a PR and I have defined a PR check, So those PR checks will be will be run on every commit which has been sent to the remote repository. And in other cases, when we merge the code changes to staging and master. So based on the defined actions, you know, the code will be deployed automatically to different environments. And this will, um, remove the the requirement of manually deploying the code to the to the different environments and makes, um, life, uh, of the developer EZ, and the team is auto also
Yep. Uh, Solend is one of the fundamentals of software engineering, uh, which says that, uh, single responsibility principle, open close, uh, principle, list of substitution principle, uh, interoperability principle and dependency inversion principle. And these are the ways, uh, these, I would say, as a as a design patterns to help the developers write the clean code and the maintainable code. And so that one of the ways is oh, as I will talk about some some of the ways, which is s as it stands for the single responsibility principle. So if we talk about any components in the JavaScript framework, then that component should have only 1 responsibility. It should not be like that. Uh, the component is handling the multiple responsibility, which breaks the the fundamentals of solid. And if it all it also becomes in a long run. So we should take care of the principles of solid. And maybe I will talk about one more, like, depends density inversion. So there if there are 2 other dependencies within a within a software, within a, uh, any any programming language or in a software, then it should not be dependent of each other. Uh, we can we can replace, uh, any part of the component or any part of the system with other. That is known as the dependency inversion