A
Associate Software Engineer
Amtech Software
Hinganghāt
Full-Time
0-3 Years experience
Description
<p style="text-align: justify;"><span style="font-family: arial, helvetica, sans-serif; font-size: 12pt;"><strong data-olk-copy-source="MailCompose">About Vista Equity Partners</strong></span></p>
<p style="text-align: justify;"><span style="font-family: arial, helvetica, sans-serif; font-size: 12pt;">Vista Equity Partners is a leading global investment firm focused exclusively on enterprise software, data, and technology-enabled businesses. With over $100B in assets under management and a portfolio of 90+ software product companies worldwide, Vista accelerates growth through operational excellence, shared expertise, and long-term partnership. In India, Vista's presence continues to expand with 45+ portfolio companies employing more than 17,000 professionals across technology, product, customer success, and operations — reinforcing India's strategic role as a hub of innovation and talent within the Vista ecosystem.</span></p>
<p style="text-align: justify;"><span style="font-family: arial, helvetica, sans-serif; font-size: 12pt;">Through its Agentic AI Factory, Vista is embedding Generative AI across its global portfolio — enabling companies to integrate intelligent, responsible AI into products, operations, and decision-making. This initiative is strengthened through portfolio-wide learning programs, leadership workshops, and AI hackathons that foster innovation, build fluency, and accelerate practical AI adoption across teams.</span></p>
<p style="text-align: justify;"><span style="font-family: arial, helvetica, sans-serif; font-size: 12pt;"><strong>About Amtech</strong></span></p>
<p style="text-align: justify;"><span style="font-family: arial, helvetica, sans-serif; font-size: 12pt;">Amtech is a leading provider of enterprise software solutions for the packaging, printing, and manufacturing industries. Our integrated systems streamline order management, production planning, scheduling, inventory, and business analytics — empowering customers to drive efficiency, reduce costs, and improve operational performance. With a strong commitment to innovation and customer success, Amtech delivers reliable technology backed by deep industry expertise.</span></p>
<p style="text-align: justify;"><span style="font-family: arial, helvetica, sans-serif; font-size: 12pt;">With Vista's investment and strategic guidance, we combine the agility of a growing technology organization with the scale, stability, and career mobility of a global software ecosystem.</span></p>
<p><span style="font-size: 12pt;"><span style="font-family: arial, helvetica, sans-serif;"><strong>Our Employee Value Proposition<br></strong></span><span style="font-family: arial, helvetica, sans-serif;">At Amtech, our people are our greatest differentiator. We create an environment where you can:</span></span></p>
<p><span style="font-size: 12pt;"><span style="font-family: arial, helvetica, sans-serif;"><strong>Purpose<br></strong></span><span style="font-family: arial, helvetica, sans-serif;">Shape the future of manufacturing and supply chain operations by delivering mission-critical enterprise software used by industry-leading organizations.</span></span></p>
<p><span style="font-size: 12pt;"><span style="font-family: arial, helvetica, sans-serif;"><strong>Growth<br></strong></span><span style="font-family: arial, helvetica, sans-serif;">Access continuous learning, leadership development, and cross-portfolio opportunities through Vista's global network — accelerating both technical and managerial career paths.</span></span></p>
<p><span style="font-size: 12pt;"><span style="font-family: arial, helvetica, sans-serif;"><strong>Culture<br></strong></span><span style="font-family: arial, helvetica, sans-serif;">Work in a collaborative, transparent, and people-first environment where values, accountability, and integrity guide every decision.</span></span></p>
<p><span style="font-size: 12pt;"><span style="font-family: arial, helvetica, sans-serif;"><strong>Innovation<br></strong></span><span style="font-family: arial, helvetica, sans-serif;">Engage with cutting-edge technologies, including AI-driven automation, and contribute to modernizing financial systems and operational processes across the business.</span></span></p>
<p> </p>
<p style="text-align: justify;"><span style="font-size: 12pt;"><strong>Position Overview<br></strong></span><span style="font-size: 12pt;"><span data-contrast="auto">We are seeking an </span><strong><span data-contrast="auto">Associate Software Engineer</span></strong><span data-contrast="auto"> to join our </span><strong><span data-contrast="auto">Siteline</span></strong><span data-contrast="auto"> development team. You will work on a portal built for label and flexible packaging converters to make order intake efficient, intelligent, and collaborative for service representatives, distributors, and customers.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> <br></span></span><span style="font-size: 12pt;"><span data-contrast="auto">As an entry-level engineer, you will build foundational skills in PHP, ReactJS, C#/.NET development, database design, and software quality practices while contributing to a mature, production system used by manufacturing customers worldwide.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
<p><span style="font-size: 12pt;"><span data-contrast="auto">This role emphasizes learning, code quality, and data integrity over breadth of features. You will write code that handles financial transactions, inventory management, and production scheduling—where correctness is non-negotiable.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Key Responsibilities</span></strong><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="1" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="1" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Write safe, testable C# code</span></strong><span data-contrast="auto"> that follows enterprise standards for parameter binding, exception handling, and resource cleanup.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="1" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="2" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Develop and maintain SQL queries</span></strong><span data-contrast="auto"> that correctly handle joins, grouping, null values, and transaction boundaries.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="1" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="3" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Debug systematically</span></strong><span data-contrast="auto"> using logs, breakpoints, and methodical reasoning rather than trial-and-error.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="1" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="4" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Participate in code review</span></strong><span data-contrast="auto"> as both author and reviewer, learning from peers and contributing to team code quality.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="1" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="5" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Implement features and bug fixes</span></strong><span data-contrast="auto"> from specification, with attention to edge cases and test coverage.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="1" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="6" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Own your learning curve</span></strong><span data-contrast="auto">—ask questions, document unfamiliar patterns, and build mental models of the codebase.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="1" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="7" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Collaborate across functional areas</span></strong><span data-contrast="auto">—work with QA, product, and customer success to understand business requirements and validate solutions.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Required Qualifications</span></strong><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Technical Foundation</span></strong><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="1" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">PHP & OOPS fundamentals</span></strong><span data-ccp-props="{"335551550":6,"335551620":6,"335559991":357}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="1" data-aria-level="2">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Core Language Syntax & Data Handling</span></strong><span data-ccp-props="{"134233279":false,"335551550":6,"335551620":6,"335559991":357}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Wingdings" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":2160,"335559991":360,"469769226":"Wingdings","469769242":[9642],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="1" data-aria-level="3">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Variables and Types</span></strong><span data-contrast="auto">: Declaring variables with $ and using strings, integers, floats, booleans, and null.</span><span data-ccp-props="{"335551550":6,"335551620":6,"335559991":357}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Wingdings" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":2160,"335559991":360,"469769226":"Wingdings","469769242":[9642],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="2" data-aria-level="3">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Arrays</span></strong><span data-contrast="auto">: Using numeric and associative arrays, plus built-in manipulation functions.</span><span data-ccp-props="{"335551550":6,"335551620":6,"335559991":357}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Wingdings" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":2160,"335559991":360,"469769226":"Wingdings","469769242":[9642],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="3" data-aria-level="3">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Control Structures</span></strong><span data-contrast="auto">: Writing if-else conditionals, switch blocks, and loops like for, while, and foreach.</span><span data-ccp-props="{"335551550":6,"335551620":6,"335559991":357}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Wingdings" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":2160,"335559991":360,"469769226":"Wingdings","469769242":[9642],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="4" data-aria-level="3">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Functions</span></strong><span data-contrast="auto">: Creating user-defined functions and understanding parameter types and return declarations.</span><span data-ccp-props="{"335551550":6,"335551620":6,"335559991":357}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="2" data-aria-level="2">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Object-Oriented Programming (OOP)</span></strong><span data-ccp-props="{"134233279":false,"335551550":6,"335551620":6,"335559991":357}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Wingdings" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":2160,"335559991":360,"469769226":"Wingdings","469769242":[9642],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="1" data-aria-level="3">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Classes and Objects</span></strong><span data-contrast="auto">: Defining classes, properties, methods, and instantiation.</span><span data-ccp-props="{"335551550":6,"335551620":6,"335559991":357}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Wingdings" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":2160,"335559991":360,"469769226":"Wingdings","469769242":[9642],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="2" data-aria-level="3">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Access Modifiers</span></strong><span data-contrast="auto">: Using public, private, and protected keywords.</span><span data-ccp-props="{"335551550":6,"335551620":6,"335559991":357}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Wingdings" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":2160,"335559991":360,"469769226":"Wingdings","469769242":[9642],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="3" data-aria-level="3">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Inheritance & Basics</span></strong><span data-contrast="auto">: Extending classes and understanding constructor methods.</span><span data-ccp-props="{"335551550":6,"335551620":6,"335559991":357}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="3" data-aria-level="2">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Databases & Web API Integration</span></strong><span data-ccp-props="{"134233279":false,"335551550":6,"335551620":6,"335559991":357}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Wingdings" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":2160,"335559991":360,"469769226":"Wingdings","469769242":[9642],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="1" data-aria-level="3">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Form Handling</span></strong><span data-contrast="auto">: Capturing and processing $_GET and $_POST user input securely.</span><span data-ccp-props="{"335551550":6,"335551620":6,"335559991":357}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Wingdings" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":2160,"335559991":360,"469769226":"Wingdings","469769242":[9642],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="2" data-aria-level="3">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">MySQL Connectivity</span></strong><span data-contrast="auto">: Connecting via PDO (PHP Data Objects) and executing basic CRUD (Create, Read, Update, Delete) SQL queries.</span><span data-ccp-props="{"335551550":6,"335551620":6,"335559991":357}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Wingdings" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":2160,"335559991":360,"469769226":"Wingdings","469769242":[9642],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="3" data-aria-level="3">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">State Management</span></strong><span data-contrast="auto">: Handling sessions and cookies.</span> </span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="2" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">C# and .NET Framework</span></strong><span data-contrast="auto"> fundamentals:</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="1" data-aria-level="2">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Understanding of value types vs. reference types and when each applies.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="2" data-aria-level="2">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Ability to use LINQ and collections (List<T>, Dictionary<TKey, TValue>).</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="3" data-aria-level="2">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Familiarity with async/await patterns.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="4" data-aria-level="2">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Knowledge of exception handling and the using statement for resource cleanup.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="3" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">SQL fundamentals</span></strong><span data-contrast="auto">:</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="1" data-aria-level="2">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Ability to write SELECT, INSERT, UPDATE, and DELETE queries.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="2" data-aria-level="2">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Understanding of INNER JOIN, LEFT JOIN, GROUP BY, and WHERE vs. HAVING clauses.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="3" data-aria-level="2">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Correct use of IS NULL / IS NOT NULL instead of equality comparisons with NULL.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="4" data-aria-level="2">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Understanding of transactions and why related operations belong in a single transaction.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="5" data-aria-level="2">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Ability to use parameterized queries to prevent SQL injection.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="4" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Data safety and quality</span></strong><span data-contrast="auto">:</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="1" data-aria-level="2">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Recognition that SQL parameters protect against injection, quoting issues, and data format problems.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="2" data-aria-level="2">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Understanding that UI validation is </span><strong><span data-contrast="auto">not sufficient</span></strong><span data-contrast="auto">—database constraints and application logic must enforce integrity.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="3" data-aria-level="2">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Knowledge of why catching exceptions without handling them is dangerous.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="4" data-aria-level="2">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Awareness that disabling buttons or showing confirmation dialogs must be paired with database-level uniqueness constraints.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="5" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Debugging discipline</span></strong><span data-contrast="auto">:</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="1" data-aria-level="2">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Ability to step through code with a debugger and inspect variable state.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="2" data-aria-level="2">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Habit of reviewing logs and error messages before guessing at causes.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="3" data-aria-level="2">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Understanding of when to add logging vs. when to set breakpoints.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="o" data-font="Courier New" data-listid="4" data-list-defn-props="{"335552541":1,"335559685":1440,"335559991":360,"469769226":"Courier New","469769242":[9675],"469777803":"left","469777804":"o","469777815":"multilevel"}" data-aria-posinset="4" data-aria-level="2">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Willingness to write small test cases to isolate problems.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">General Competencies</span></strong><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="5" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="1" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Communication</span></strong><span data-contrast="auto">: Explain unfamiliar code in plain language; ask clarifying questions about business requirements.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="5" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="2" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Ownership</span></strong><span data-contrast="auto">: Take responsibility for code quality, testing, and correctness rather than shipping and hoping.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="5" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="3" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Curiosity</span></strong><span data-contrast="auto">: Understand the "why" behind patterns and best practices, not just the syntax.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="5" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="4" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Collaboration</span></strong><span data-contrast="auto">: Work well with code reviewers, QA, and cross-functional teams.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Preferred Qualifications</span></strong><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="6" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="1" data-aria-level="1">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Experience with a relational database (SQL Server, PostgreSQL, MySQL, or Oracle).</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="6" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="2" data-aria-level="1">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Familiarity with web development (ASP.NET, WinForms, or similar).</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="6" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="3" data-aria-level="1">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Understanding of version control (Git, Azure DevOps, or similar).</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="6" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="4" data-aria-level="1">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Experience with unit testing frameworks or test-driven development.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="6" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="5" data-aria-level="1">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Exposure to enterprise software or ERP systems.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="6" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="6" data-aria-level="1">
<p><span style="font-size: 12pt;"><span data-contrast="auto">Bachelor's degree in Computer Science or a related field (or equivalent self-directed learning).</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<p><span style="font-size: 12pt;"><span data-ccp-props="{"335551550":6,"335551620":6}"> </span><strong><span data-contrast="auto">Work Environment & Culture</span></strong><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="7" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="1" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Mature codebase</span></strong><span data-contrast="auto">: 5000+ files, 500K lines of code. You'll learn from established patterns and existing code.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="7" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="2" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Customer-focused</span></strong><span data-contrast="auto">: Your code impacts real manufacturing operations. Correctness and reliability are paramount.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="7" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="3" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Collaborative</span></strong><span data-contrast="auto">: Code review, pair programming, and mentorship are standard practices.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
</ul>
<ul>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="7" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="4" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Production mindset</span></strong><span data-contrast="auto">: You'll work with SQL Server, financial transactions, and multi-user scenarios from day one.</span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
</li>
<li style="font-size: 12pt;" data-leveltext="" data-font="Symbol" data-listid="7" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="5" data-aria-level="1">
<p><span style="font-size: 12pt;"><strong><span data-contrast="auto">Learning curve</span></strong><span data-contrast="auto">: You are not expected to know application specific frameworks on day one. You'll learn these through hands-on development and mentorship.</span></span></p>
</li>
</ul>
<p><span style="font-size: 12pt;" data-contrast="auto"></span></p>
<p><span style="font-size: 12pt;"><strong>Why Join Amtech</strong></span></p>
<p><span style="font-size: 12pt;">At Amtech, you will drive meaningful financial impact in a growing enterprise software organization while benefiting from Vista's world-class ecosystem. You'll collaborate with talented peers, leverage cross-portfolio learning programs, and help shape the future of Amtech's financial operations and systems. Build your career with Amtech —<strong> backed by the strength, scale, and innovation culture</strong></span></p>
<p><span style="font-size: 12pt;"><span data-contrast="auto"><br></span><span data-ccp-props="{"335551550":6,"335551620":6}"> </span></span></p>
Eligibility Criteria
- Seniority: Entry Level
- Education: Bachelor's degree required
- Languages: English
About Amtech Software
-
