Software Engineer
Job Description
Role is 100% On-Site
Responsibilities:
- Develop high-quality application software for various project assignments.
- Take ownership of the entire software life cycle, including requirements gathering, design, integration, development, testing, deployment, and support.
- Gain a deep understanding of key business processes and the applications supporting them.
- Analyze and resolve system-processing problems related to information system applications.
- Work independently in a project team environment with other end-users and managers.
- Collaborate closely with personnel throughout the PowerBench team and other departments.
- Overcome obstacles by leveraging peers and management to meet deadlines and complete tasks.
- Collaborate with peers and customers as needed for project requirements.
- Prioritize workload effectively and switch to higher priority tasks when required.
- Participate in customer interactions, including design reviews and integration activities.
- Continuously improve personal skills and expand the applicable skill set.
- Identify potential opportunities for new projects or solutions to enhance business processes or systems.
- Set goals and meet them within specified timelines, maintaining focus and driving completion.
- React to minimal information and navigate in a parallel processing environment regardless of project size or scope.
- Innovate and propose new solutions for business processes or technical challenges.
- Take responsibility for major areas of customer interface, prioritizing customer interests.
- Apply logical thinking to analyze and address complex technical and business problems.
- Understand key business processes and their supporting applications, documenting software solutions in approved repositories.
- Maintain a high level of technical competence and assist others in adopting state-of-the-art techniques.
- .
Education / Qualifications:
- Bachelor's or Master's degree in Computer Science, Engineering, or Applied Science.
- 3-5 years of experience in designing and implementing technical software solutions in a fast-paced environment.
- Ability to design and implement complex system designs in a highly distributed and complex environment.
- Strong programming skills in C#, Java, and C/C++.
- Extensive experience in designing and developing web applications using JavaScript, ReactJS, nodeJS, Webpack, HTML5, and the latest web standards.
- Proficiency in scripting languages such as Python, PHP, and SQL.
- Experience in designing applications and schemas utilizing relational databases.
- Familiarity with web server technologies and software development of web applications on UNIX and Windows environments.
- Experience in developing reusable software and software tools.
- Knowledge of Web Services and Service-Oriented Architecture (SOA).
- Experience with EDA software, such as Altium, and creating complex automation scripts is a plus.
- Strong team player, capable of working effectively independently or in a team.
- Willingness to learn and recommend new technologies as required to complete technical solutions.