Software Eng 3
Role details
Job location
Tech stack
Job description
Software Engineer 3 designs, develops, maintains, tests, and evaluates software for CNC computer control system under limited supervision of the Software Engineering Supervisor.
Essential Duties and Responsibilities include the following. Other duties may be assigned.
-
Proposes problem solutions through analysis, problem definition, requirement generation and implementation of those solutions.
-
Creates documentation and supporting diagrams supporting solutions.
-
Prepares and installs source code into source control by determining compliance of software changes with system specifications, programming best practices, and ensuring these changes are free from defects.
-
Improves workflow by conducting analysis, and recommending changes in policies and procedures to management.
-
Must be an active coder.
-
Creates bug reports through investigation and by collecting, analyzing data, and providing clear documentation on reproduction of observed issues.
-
Communicate technical ideas clearly, able to use Microsoft Office applications when appropriate.
Employees are expected to follow instructions, procedures and to escalate any issue impacting workflow, quality, etc.
- Employees must exhibit honesty and integrity as well as demonstrate adherence to rules, procedures and policies., This position requires computer use, including monitor, keyboard, mouse, trackball, touchpad, etc.
Requirements
Do you have experience in XML?, To perform this job successfully the candidate must be able to perform each essential duty adequately. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions., * 3+ years of coding experience.
Expertise in Java, C and C++.
-
OOP (Object Orientated Programming) knowledge.
-
Experience reading and writing bash and batch scripts (basic).
-
Comfortable working in Windows and Linux environments. Linux is not a requirement, but will have to learn.
-
Experience with inter-process communication (Google Protocol Buffers is a plus).
-
Experience in writing and debugging multi-threaded applications.
-
Understanding of real time systems, XML , file systems, networking, multi-threaded applications, computer graphics, linear algebra, calculus, geometry, and trigonometry, human-computer interaction/User Interface design, design patterns, encryption, hashing, checksums, and CRCs (Cyclical Redundancy Check).
-
Experience in reading and writing technical requirement documentation.
-
Experience working with source-control system.
-
Experience with Eclipse/Visual Studios.
-
Can reverse engineer source code written in C and generate requirements, and write equivalent code in a higher level language.
Education
Bachelor's Degree BA/BS/BFA/BSA from a four-year college or university is required, plus additional related experience, training and/or equivalent combination of education and experience.
Preferred Major
Computer Science
Computer Engineering
Electrical Engineering
Minimum Years of Experience
3-5 years
Language Skills
Must have the ability to read, analyze, and interpret general business periodicals, professional journals, technical procedures, and/or governmental regulations in English. Must be able to write analytical and/or technical reports, business correspondence, procedure manuals, and create instructional reference material. Able to speak effectively before groups, customers, employees of the organization and/or the general public.
Mathematical Skills
Must have an advanced understanding of mathematical concepts including but not limited to probability, statistical inference, fundamentals of plane and solid geometry, trigonometry, and/or calculus.
Reasoning Ability
Must have the ability to apply principles of logical and scientific thinking and work with a wide range of intellectual and practical problems. Must have the capability to deal with a variety of abstract and/or concrete variables. In addition, will need to interpret a variety of instructions furnished in written, oral, diagram, and/or schedule form., Repetitive use of hand
Frequently
Simple grasping
Frequently
Power grasping
Occasionally
Fine manipulation
Frequently
Pushing & Pulling
Frequently
Vision
Required
Close vision
Yes
Distance vision